Java-数据类型详解
整数类型
Java语言中描述整数数据的类型有:byte、 short、int、long,荐int类型
规律:1个字节为-2^(8 - 1) ~ 2^(8 - 1)-1
那么类型在内存空间中占 n 个字节表示范围是:2^(8 * n - 1) ~ 2^(8 - 1)-1
- 其中
byte
类型在内存空间中占1个字节,表示范围是:-2^7 ~ 2^7-1
. - 其中
short
类型在内存空间中占2个字节,表示范围是:-2^15 ~ 2^15-1
. - 其中
int
类型在内存空间中占4个字节,表示范围是:-2^31 ~ 2^31-1
. - 其中
long
类型在内存空间中占8个字节,表示范围是:-2^63 ~ 2^63-1
.
在 Java 中整数直接量默认为 int 类型
浮点类型
Java语言中用于描述小数数据的类型:float 和 double,推荐 double 类型
float 和 double 在运算中都可能有误差不能做到精确运算
商业项目涉及到金钱一般都不会用浮点类型,若希望实现精确运算则借助java.math.BigDecimal
类型
- 其中
float
类型在内存空间占 4 个字节,单精度浮点数,可以表示7位有效数字,范围:-3.403E38 ~ 3.403E38
(E38 = 10^38). - 其中
double
类型在内存空间占 8 个字节,双精度浮点数,可以表示15位有效数字,范围:-1.798E308~1.798E308
.
在 Java 中小数数据直接量默认为 double 类型
错误:不兼容的类型:从 double 转换到 float 可能会有损失小数数据叫做直接量,默认为 double 类型
float fl = 3.1415926;
布尔类型
Java语言中用于描述真假信息类型有: boolean,数值只有:
true
和false
布尔类型在内存空间中所占大小没有明确的规定,可以认为是1个字节。
字符类型
Java字符类型采用
Unicode
字符集编码。 Unicode 是世界通用的定长字符集,所有的字符都是 16 位。
- Java语言中用于描述单个字符的数据类型:
char
类型。如:'a'
、'中'
等。
其中
char
类型在内存空间中占 2 个字节并且没有符号位,表示的范围是0 ~ 65535
,由于现实生活中很少有数据能够被单个字符描述,因此以后的开发中更多的使用由多个字符串起来组成的字符串,使用String
类型加以描述,如:"helo"、"奇点"等。