目录
- 2.3.1 基本数据类型
- 1、整型
- 2、浮点型
- 3、char 字符
- 4、boolean
- 2.3.2 基本类型转换
2.3.1 基本数据类型
1、整型
- byte 字节
1、byte 数据类型是1个字节8位、有符号、以二进制补码表示的整数;
2、最小值是 -128(-2^7),最大值是 127(2^7-1)
3、默认值是 0
4、byte 类型用在大型数组中节约空间,主要代替整数,byte 变量占用的空间只有 int 类型的四分之一
定义: byte b = 10;
- short 短整型
1. short 数据类型是2个字节 16 位、有符号的以二进制补码表示的整数
2. 最小值是 -32768(-2^15), 最大值是 32767(2^15 - 1)
3. 默认值是 0
定义: short s = 10;
int 整型
1. int 数据类型是4个字节32位、有符号的以二进制补码表示的整数
2. 最小值是:-2,147,483,648(-2^31),最大值是:2,147,483,647(2^31 - 1)
3. 一般地整型变量默认为 int 类型;
4. 默认值是 0
定义: int i = 10;
- long 长整型
1、long 数据类型是 8个字节 64 位、有符号的以二进制补码表示的整数;
2、最小值是 -9,223,372,036,854,775,808(-2^63),最大值是 9,223,372,036,854,775,807(2^63 -1);
3、这种类型主要使用在需要比较大整数的系统上;
4、默认值是 0L
5、"L"理论上不分大小写,但是若写成"l"容易与数字"1"混淆,不容易分辩。所以最好大写。
定义: long l = 10L;
2、浮点型
是有限、离散的,有舍入的误差,结果为约等于,应避免使用浮点数进行比较,银行业务可以用BigDecimal工具类
- float 单精度小数:
1、float 数据类型是单精度、 4个字节 32位、符合 IEEE 754标准的浮点数;
2、float 在储存大型浮点数组的时候可节省内存空间;
3、默认值是 0.0f;(后缀为f或F)
4、浮点数不能用来表示精确的值
定义: float f = 10.0f
double 双精度小数
1、double 数据类型是双精度、 8个字节 64 位、符合IEEE 754标准的浮点数;
2、浮点数的默认类型为double类型;
3、double类型同样不能表示精确的值,如货币;
4、默认值是 0.0d;
定义: double d = 10.0d
3、char 字符
1、char类型是一个单一的 2个字节16位 Unicode 字符;用''单引号表示
2、最小值是 \u0000(即为 0),最大值是 \uffff(即为65、535);
3、char 数据类型可以储存任何字符,有且只能有一个字符;
4、可以进行计算,实质为Unicode编码间的计算。
4、boolean
1、boolean数据类型表示一位的信息;
2、只有两个取值:true (1)和 false(0);
3、这种类型只作为一种标志来记录 true/false 情况;
4、默认值是 false;
5、布尔型用于逻辑运算、条件控制语句、循环语句等
2.3.2 基本类型转换
java为强类型语言,数字表示范围小的数据类型可以自动转换
成范围大的数据类型,但是大范围的数据转换成小范围数据需要强制类型转换
,在计算时会自动向范围表示大的值的数据类型提升
。
注意:
1、布尔值不参与类型转换
2、不能把对象类型转换为不相干的类型
3、大范围的数据转换成小范围数据需要`强制类型转换` (类型)value
4、强制转换存在内存溢出的问题,容易影响精度
5、浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入
6、其中整数的常量默认为int类型,浮点型常量默认是double类型