java是一种强类型语言,意味着必须为每一个变量声明一种类型,在java中,一共有8中基本类型,其中4中整型、2中浮点型、1中用于表述Unicode编码的字符单元的字符类型char和一种表示真值的boolean类型。
整型
整型用于表示没有小树部分的值,它允许是负数
类 型 存储需求 取值范围
int 4字节 -2 147 483 648 ~ 2 147 483 647(正好超过20亿)
short 2字节 -32 768 ~ 32 767
long 8字节 -9 223 372 036 854 775 808 ~ 9 223 372 036 854 775 807
byte 1字节 -128 ~ 127长整型数值有一个后缀L(如400000000L)。十六进制数值有一个前缀0x(如0xCAFE) 。八进制有一个前缀0(如101对应八进制中的8),很显然,八进制表示法比较容易混淆,所以建议不要使用八进制常数。
浮点类型
浮点类型表示有小数的值
类 型 存储需求 取值范围
float 4字节 大约+-3.402 823 47E +38E(有效位数为6-7位)
double 8字节 大约+-1.797 693 134 862 315 70E+308(有效位数为15位)
double表示的数值精度是float的两倍(有人称之为双精度),绝大多数应用都采用double类型
float类型的数值有一个后缀F(如 3.14F) 。没有后缀F的浮点型默认为double类型
所有浮点数值都遵循IEEE 754 规范。下面由于表示溢出和出错的三个特殊的浮点数值:
. 正无穷大
. 负无穷大
. NaN(不是一个数字)
例如,一个正整数除以0的结果是正无穷大。计算0/0或者负数的平方根结果为NaN。
浮点数值不适合用于禁止出现舍入误差的金融计算中,应该使用BigDecimal类char类型
char类型用于表示单个字符,通常用来表述字符常量,例如:’A’ 的编码为65对应的字符常量,它与”A” 不同,”A” 表示一个包含A的字符串boolean类型
boolean有两个值:false和true 用来判定逻辑条件