- 基本数据类型
- 引用数据类型
Java中内置了8种基本数据类型,分别表示整数、小数、字符、布尔类型
byte
short
int
long
float
double
char
boolean
byte
short
int
long
4种数据类型,可以理解为四种不同大小的容器,用来存储不同的数据类型
计算机本质上只识别 0 和 1 的二进制数据,但是二进制表示形式比较复杂,二进制的单位是 bit
byte 在计算机中只能存储 1 个字节的数据,1b = 8 bit
short 在计算机中只能存储 2 个字节的数据,16bit (32767) — -32768
int 在计算机中,只能存储 4 个字节的数据,32bit (231-1) — -231
long 在计算机中,只能存储 8 个字节的数据,64bit (263-1) — -263
由 0 和 1 组成的数字
二进制的最高位代表符号位,0 代表正数,1 代表负数
byte 占用一个字节 8bit,那么他的最大值是 0111 1111 (127),他的最小值 1000 0000 (-128)
正数:0101 1100 ===> 0 * 20 + 0 * 21 + 1 * 22 + 1* 23 + 1 * 24 + 0 * 25 + 1 * 26+0*27 = 0 + 0 + 4 + 8 + 16 + 0 + 64 + 0 = 92
负数:1010 1100
如果一个二进制代表负数,那么要计算他的十进制,必须先获取该二进制对应的补码,再根据补码计算对应的 10 进制
负数的补码 = 负数的原码取反 + 1
1010 1100 ====> 0101 0011 + 1 ====> 0101 0100 ====> 0 + 0 + 4 + 0 + 16 + 0 + 64 + 0 ===> -84
35 ===> 100011
- float
- double
float 占用 4 个字节,单精度
double 占用 8 个字节,双精度
小数的字面量默认类型是 double,如果要表示 float 类型,需要在字面量后添加 F,如果要强制表示 double,可以在尾部添加 D (通常不需要添加)
小数在计算机中进行数据存储的时候,可能会产生精度损失,所以在Java中,小数在做运算的时候,得到的结果有可能和数学中得到的结果不一致
3.5 ===> 0011.1
3.25 ===> 0011.01
- 在Java中,字符由 单引号 进行定义
- 占用 2 个字节,字符的编号是从 0 开始的,所以他的两个字节的最高位不代表符号位
- char 的最大数字表示是 65535 (216-1)
- 单引号 中定义一个 单字符
- 用一个数字(0-65535)表示
- 用 u unicode编码方式表示
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)