Int8,Int16,Int32,Int64 有啥不同
大家有没有写了很久代码,还不知道这个Int8,Int16, Int32, Int64有什么区别呢?或者是为什么后面的数字不一样呢?
初步了解了一下,才清楚这个东西。
先来扫盲一下计算机存储单元,
在计算机内部,信息都是釆用二进制的形式进行存储、运算、处理和传输的。信息存储单位有位、字节和字等几种。
各种存储设备存储容量单位有KB、MB、GB和TB等几种
计算机的基本的存储单元有:
位(bit):二进制数中的一个数位,可以是0或者1,是计算机中数据的最小单位。
二进制的一个“0”或一个“1”叫一位。
字节(Byte,B):计算机中数据的基本单位,每8位组成一个字节。各种信息在计算机中存储、处理至少需要一个字节。
ASCIIS码: 1个英文字母(不分大小写)= 1个字节的空间
1个中文汉字 = 2个字节的空间
1个ASCII码 = 一个字节
UTF-8编码:1个英文字符 = 1个字节
英文标点 = 1个字节
1个中文(含繁体) = 3个字节
中文标点 = 3个字节
Unicode编码:1个英文字符 = 2个字节
英文标点 = 2个字节
1个中文(含繁体) = 2个字节
中文标点 = 2个字节
扩展的存储单位有:
计算机存储容量大小以字节数来度量,1024进位制:
1024B=1K(千)B
1024KB=1M(兆)B
1024MB=1G(吉)B
1024GB=1T(太)B
这是常用的五个,至于PB,EB,ZB,YB,BB,NB,DB几乎在日常使用中是不会遇到的。
而Int8,Int16,Int32,nt64,后面的数字就代表这个数据类型占据的空间。
Int8, 等于Byte, 占1个字节.
Int16, 等于short, 占2个字节. -32768 32767
Int32, 等于int, 占4个字节. -2147483648 2147483647
Int64, 等于long, 占8个字节. -9223372036854775808 9223372036854775807
这样, 看起来比short,int,long更加直观些!
另外, 还有一个Byte, 它等于byte, 0 - 255.