指定类型
整数类型适应性类型
通常情况下,整数的字面量写出来是int类型。
如果数字足够大,那么会逐渐变成long,ulong类型
指定整数类型
或者,在数字后加上L(不区分大小写,但一般用大写的L,用来区分数字1),会强制让字面数字变成long类型。
此外,添加u(不区分大小写),会让字面数字变成uint,或ulong类型,可以和L一起用(不区分先后)。
指定小数类型
默认写出来的浮点类型是double类型,
加上f后缀(不区分大小写)可以变为float类型,加上m后缀(不区分大小写)可以变为decimal类型。
数字分隔符
如果一个数字太大,可能会数不清。
在英文里通常使用逗号,每三位进行一个分隔。
在c#中,可以用下划线进行分隔,不限位数,不能在开头或结尾。
var i1 = 1_000_000;
var i2 = 100_000;
var i3 = 1_0__0___0_____0______0;
科学计数法(仅限浮点型)
小数类型可以只打点,省略整数部分的0来书写。
对于过大的数字,可以使用科学计数法使用e(不区分大小写)进行书写。
e后面跟随一个数字,表示乘10的这么多次方。
比如e2就是乘100,e6就是乘1000000,e0就是乘1,e-2就是乘0.01。
var d = 103000;
var d2 = 103e3;
var d3 = 10.3e4;
var d4 = 1.03e5;
var d5 = .103e6;
var g = 0.000032;
var g2 = 32e-6;
var g3 = 3.2e-5;
var g4 = .32e-4;
2进制和16进制(仅限整数类型)
在写整数时,在前面写0b会以2进制格式解析,0x会以16进制进行解析。
如果使用了不在此进制范围的字符声明字面量会报错。
var a1 = 0b10001;
var a2 = 0x44ff;
Console.WriteLine(a1);
Console.WriteLine(a2);