📅  最后修改于: 2023-12-03 14:50:51.846000             🧑  作者: Mango
在编程中,将整数转换为二进制是一个常见的需求。在 C# 中,有多种方法可以实现这一目标。
C# 中的 Convert.ToString 方法可以将整数转换为任何进制的字符串,包括二进制。下面是一个将 int 类型变量 num 转换为二进制字符串的示例代码:
int num = 42;
string binaryString = Convert.ToString(num, 2);
Console.WriteLine(binaryString);
输出结果为:
101010
上面的示例代码能够将整数转换为二进制字符串,但是不能保证字符串的长度是固定的。如果需要固定字符串的长度,可以使用 PadLeft 方法来实现。下面是一个将 int 类型变量 num 转换为 8 位二进制字符串的示例代码:
int num = 42;
string binaryString = Convert.ToString(num, 2).PadLeft(8, '0');
Console.WriteLine(binaryString);
输出结果为:
00101010
如果不想使用 Convert.ToString 方法,也可以使用位运算符来实现将整数转换为二进制。下面是一个将 int 类型变量 num 转换为二进制字符串的示例代码:
int num = 42;
string binaryString = "";
for (int i = 31; i >= 0; i--)
{
binaryString += (num >> i) & 1;
}
Console.WriteLine(binaryString);
输出结果为:
00000000000000000000000000101010
在 C# 中,也可以使用 BitArray 类来处理二进制数据。下面是一个将 int 类型变量 num 转换为 BitArray 对象的示例代码:
int num = 42;
BitArray bitArray = new BitArray(new int[] { num });
string binaryString = "";
for (int i = bitArray.Length - 1; i >= 0; i--)
{
binaryString += bitArray[i] ? "1" : "0";
}
Console.WriteLine(binaryString);
输出结果为:
00101010
以上就是在 C# 中将 int 转换为二进制的几种方法。无论使用哪种方法,都可以实现将整数转换为二进制的目的。其中,Convert.ToString 方法是最简单和常用的方法,而使用位运算符和 BitArray 类则需要一定的数学和计算机原理基础,但更加灵活和可控。