八种基本数据类型:
- 整数类型(byte,int,short,long)
- 浮点类型(float,double)
- 字符型(char)
- 布尔型(boolean)
1. 表示形式:
- 整数类型:
-
byte(8位),int(32位),short(16位),long(32位)
表示形式: 以二进制补码形式表示的有符号整数
有效值范围:-2^(n-1)~2 ^(n-1)-1, n为位数 -
unsigned int, unsigned short, unsigned long
表示形式:以二进制补码形式表示的无符号整数
有效值范围:0~2^n-1, n为位数
- 浮点类型:
-
float为单精度实型,占4字节,可放32位二进制数,可以是小数
表示形式:0.0f
范围:3.4E-38~3.4E+38 -
double为双精度实型,占8字节,可放64位二进制数,可以是小数
表示形式:0.0d
范围:1.7E–308~1.7E+308
- 字符型:
- char为字符型变量,例如’a’,'b’等,存储时是存储的ASCII码,ASCII码是8位,所以char只需一个字节 ( 例如:'a’为01100001)
表示形式:可以储存任何字符
范围:-128~127
- 布尔型:
- boolean(8位)
只有两个取值:true,false
2. 计算方法
- 类型转换:
- 八种数据类型中除了布尔型之外,其他均可相互转换
- 整型数容量由小到大: char ,unsigned char, short , unsigned short , int , unsigned int ,long , unsigned long ,long long , unsigned long long
- 浮点数排序大小:float , double , long double
- 自动类型转换:小容量向大容量转换
- 强制类型转换:大容量向小容量转换,程序通过编译方能通过,但是在运行阶段可能会损失精度
- 多种数据类型混合运算,先转换成最大数据类型再做运算
- 数值溢出:
- unsigned型溢出:溢出后的数会以2^位数(即有效值范围)做模运算
- signed型溢出:正常显示为实际计算结果
- 移位操作:
- 移位操作符针对补码进行
- <<为左移操作符,左移n位相当于将该数乘以2的n次方;>>为右移操作符,右移n位相当于将该数除以2的n次方;均不改变操作数的大小
- 右移时,对于逻辑移位,左边补0;对于算数移位,正数左边补0,负数左边补1
来源:CSDN
作者:syf3032
链接:https://blog.csdn.net/syf3032/article/details/104350766