所有的数据类型
http://c.biancheng.net/view/2780.html
其他数据类型怎么使⽤
c# byte int long
sbyte a = 100;
sbyte b = -100;
int c = 2100000000;
long d = 1234567891234567891;
byte e = 30;
c = a;
a = (sbyte)c;
Console.Write(a);
//a = e;
//e = a;
类型的显⽰转换和隐式转换
赋值的时候,两边类型是需要⼀致的,如果不⼀致的话,就需要转换类型。有些条件下,会⾃动进⾏转换,叫做隐式转换。
有些情况下,需要我们告诉编译器进⾏类型转换,叫做显⽰转换,也叫做强制类型转换,强塞。
注
小数赋值需加 f
c# float f = 4.5f;
f = 2123456789;
Console.WriteLine(f);
隐式转换 - 不需要写更多的代码,⾃动进⾏。
当⼩盒⼦放⼊⼤盒⼦的时候,肯定可以放得下,所有会⾃动进⾏转换。不需要做多余操作
类型 | 可以安全的转换为 |
---|---|
sbyte | short,int,long,float,double,或decimal |
byte | short,ushort,int,uint,long,ulong,float,double,或decimal |
short | int,long,float,double,或decimal |
ushort | int,uint,long,ulong,float,double,或decimal |
int | long,float,double,或decimal |
uint | long,ulong,float,double,或decimal |
long | float,double,或decimal |
ulong | float,double,或decimal |
char | ushort,int,uint,long,ulong,float,double,或decimal |
float | double |
显⽰转换 - 需要写代码告诉转换成什么类型。
c# byte a = 32;
int b = 200;
//b = a;// 隐式转换
//a = b;//显示转换 &
Console.Write(a);
int i = Convert.ToInt32("234");
double j = Convert.ToDouble("4.5");
把⼀个⼤盒⼦⾥⾯的东⻄放进⼩盒⼦的时候,编译器不确定能不能放得下,所以默认是不允
许放的,除⾮你告诉他 我⾮要放。
编译器只检查容器⼤⼩,不检查容器内的具体数值⼤⼩,为什么?因为变量⾥⾯的东⻄是变
化的,变量⾥⾯的值需要在程序运⾏的时候才确定下来。
类型的转换,得是同⼀类型,⽐如数字类型之间可以相互转换,但是我们不能把⼀个字符串转换成整数类型。但是如果要把⼀个数字字符串,转换成数字的话,我们是有对应的⽅法的。
同理,如何把⼀个数字转成数字字符串
1、Convert.ToString()
2、 number + "";
c# string s = 123 + "";//"123"
string s2 = Convert.ToString(123);//"123"
// 8bit 8位 1位只能存储一个0或1