Java是一种强类型语言。
Java一共有8种基本类型,其中4中整形,2种浮点型,1种用于表示Unicode编码的字符单元的字符类型char和1种用于表示真假的boolean类型。
整型:在Java中,整形的范围与运行Java代码的机器无关-->解决跨平台,不同位数操作系统的问题。
int:4字节 -2147483648~2147483647(正好超过20亿)
short:2字节 -32768~32767
long:8字节 非常大
byte :1字节 -128~127
1 通常情况下int就够用了。
2 长整型有一个后缀L
3 注意 Java没有任何无符号类型(unsigned type)
浮点类型:float 4字节
double 8字节
1 绝大部分情况下使用double类型,float类型的精度很难满足要求
2 float类型后缀F
3 没有后缀F的浮点型值(如3.402)默认为double类型
4 double类型后缀D
有趣的事情:System.out.println(2.0-1.1);将打印0.8999999999999999而不是人民想象的0.9.其主要原因是浮点数值采用二进制系统表示,而在二进制系统中无法精确的 表示分数1/10。所以需要无误差需要使用BigDecimal类。
char类型:char类型用于表示单个字符是一个采用UTF-16编码表示的Unicode代码点的代码单元。通常用来表示字面量。要想弄清char类型,就必须了解Unicode编码表
1Unicode编码单元可以表示为十六进制值,其范围从\u0000到\uffff。
2除了可以采用转义序列符\u表示是Unicode编码单元的编码之外,还有一些用于表示特殊字符的转义序列符,例如:\n换行,\t制表符 等等
3所有这些转义字符都可以出现在字符常量或字符串的引号内。例如,'\u2122'或"Hello\n"转义字符\u还可以出现在字符常量或字符串之外(而其他所有转义序列不可以)
boolean类型:boolean类型有两个值:false和true,整型和布尔型之间不能相互转换。例如0不能代表false,非零不能代表true。