Java数据类型
Java是一种强类型语言,所以必须为每个变量声明一种类型。
Java共有8种基本类型,其中包括:整型4种、浮点型2种、unicode字符型1种、布尔值类型1种。
整型
类型 | 存储空间 | 取值范围 |
int |
4字节 | -2147483648 ~ 2147483647 |
short | 2字节 | -32768 ~ 32767 |
long | 8字节 | -9223372036854775808 ~ 9223372036854775807 |
byte | 1字节 | -128 ~ 127 |
浮点型:用于表示有小数部分的数值。
类型 | 储存空间 | 取值范围 |
float | 4字节 | 大约±3.40282347E + 38F(有效位数为6~7位) |
double | 8字节 | 大约±1.79769313486231570E + 308(有效位数为15位) |
float类型的数值有一个后缀F,(例如3.14F),如果没有F后缀的浮点数值则默认为double类型,double类型的浮点数值亦可在后面添加后缀D,例如3.14D。
浮点数值不适用于出现传入误差的金融计算,例如:2.0 - 1.1 会出现 = 0.89999999999999 ,而不是人们想像中的0.9,其主要原因是因为浮点数值采用二进制系统表示,而在二进制系统中无法精确的表示分数1/10,这就好像十进制无法精确表示1/3一样。如果需要在数值计算中不含有任何舍入误差,就应该使用BigDecimal类。
char类型
char类型用于表示单个字符,其unicode编码单元可以表示为十六进制值,取值范围为u0000到Uffff。char类型是不推荐使用的数值类型,最好将需要处理的字符串用抽象数据类型表示。
boolean类型(布尔类型)
boolean(布尔)类型仅有两个值:true和false。这两个值用于判定逻辑真或假。在Java中整型数值和布尔值之间不能互相转换。