C#中值类型的变量主要包括整数类型、浮点类型、金钱(decimal)类型和布尔(bool)类型等。
1.整数类型
①int
范围:-2 147 483 648 ~ 2 147 483 647
大小:32位有符号整数
②short
范围:-32 768 ~ 32 767
大小:16位有符号整数
③long
范围:-9 223 372 036 854 775 808 ~ 9 223 372 036 854 775 807
大小:64位有符号整数
④… …
注意:整数类型只能存储整数,而不能存储小数。
int n1 = 10; //赋值整数,正确 int n2 = 20.0f; //赋值小数,错误*
2.浮点类型
①float
范围:1.5×10的-45次方 ~ 3.4×10的38次方
精度:7位(小数点后7位数)
②double
范围:50×10的-324次方 ~ 1.7×10的308次方
精度:15 ~ 16位(小数点后的15 ~ 16位数)
注意:浮点类型既能存储整数,也能存储小数。
float f1 = 10; //赋值整数,正确 float f2 = 20.0f;//赋值小数,正确
3.金钱(decimal)类型
与其他浮点类型相比,金钱类型具有更高的精度和更小的范围,因此更适合于计算财务和货币。
范围:-7.9228×10的28次方 ~ 7.9228×10的28次方
精度:28 ~ 29个有效位
注意:如果使用decimal类型变量,必须使用后缀m或M。如果赋值整数是没有问题的,但是如果赋值小数后缀没有m或M,则数字将被视为double类型,导致编译器错误。
decimal m1 = 5; //赋值整数,正确 decimal m2 = 10.4M; //赋值小数后缀加M,正确 decimal m3 = 20.5m; //赋值小数后缀加m,正确 decimal m4 = 30.6; //赋值小数无后缀,错误*
4.布尔(bool)类型
布尔类型是用来表示真假的,即非真即假,非假即真。在C#中,分别采用true和false表示真和假。
注意:bool类型只能赋值true或者false。
bool isBoy = true; //赋值true,正确 bool isGirl = false;//赋值false,正确 bool x = 1; //赋值数值,错误*
5.字符串(string)类型
字符串类型的值需要被双引号括住,这个双引号必须是英文半角状态下的双引号。
注意:string类型也可以赋值字符串。
string str1 = ""; //赋值空字符串 string str2 = "字符串内容";//赋值字符串 Console.WriteLine("str2");//输出:str2(表示输出*str2字符串*) Console.WriteLine(str2); //输出:字符串内容 (表示输出*str2变量*)
6.字符(char)类型
字符类型最多、最少只能有一个字符。字符类型的值需要用单引号括起来,且必须是英文半角状态下的单引号。
注意:char类型不能存储空,但能存储空字符。
char c1 = ''; //赋值空,错误* char c2 = ' '; //赋值空字符,正确 char c3 = '字符';//赋值两个字符内容,错误* char c4 = '字'; //赋值单个字符内容,正确
1)使用必须先赋值
int age; Console.WriteLine("My age is " + age); /*错误。声明变量,但是没有赋值,是不能直接使用的。*/
2)赋值必须先声明
age = 18;/*错误。未声明变量*/ Console.WriteLine("My age is " + age);/*错误。未声明变量*/
3)值必须对应类型
int age = 18.8f;/*错误。应赋值整数。*/ Console.WriteLine("My age is " + age);