📅  最后修改于: 2023-12-03 15:30:16.586000             🧑  作者: Mango
在 C# 7.0 中,新增了一种表示二进制字面量的语法。我们平常在写程序时使用的数字一般都是十进制的,但在某些情况下需要用到二进制数,以前我们可能会通过转换或者位运算来得到二进制数,但现在可以通过二进制字面量来表示。
二进制字面量使用类似于十进制的表示方法,但是加上了前缀 0b
或 0B
。例如:
int b1 = 0b1010; // 十进制的10
byte b2 = 0B00010001; // 十进制的17
使用二进制字面量可以使代码更加易读,尤其在使用位运算时,可以更加清晰地表达我们的意图,而不至于混淆。
下面是一个使用二进制字面量的例子:
[Flags]
enum FileAccess
{
Read = 0b0001,
Write = 0b0010,
ReadWrite = Read | Write,
Execute = 0b0100,
Delete = 0b1000
}
class Program
{
static void Main(string[] args)
{
var access = FileAccess.ReadWrite | FileAccess.Execute;
Console.WriteLine($"Access = {access}");
Console.ReadKey();
}
}
输出结果:
Access = Read, Write, Execute
二进制字面量是 C# 7.0 新增的一种语法,用于表示二进制数,使用方法类似于十进制,但需要加上前缀 0b
或 0B
。使用二进制字面量可以使代码更加易读,特别是在使用位运算时。