boolean类型
Boolean在内存中占用一个字节。
当java编译器把java源代码编译为字节码时,会用int或byte来表示boolean。在java虚拟机中,用整数零来表示false,用任意一个非零整数表示true。
java虚拟机这种底层处理方式对java虚拟机是透明的,在java源程序中boolean类型的变量取值只能是true或false
注意
在js中当表达式的值为如下情况返回的都是假:
false
0
字符串的空""
NaN
undefined
null
js 的if 判断实际上是 Boolean(a) ==true 来判断的,先将 a 转化为Boolean 对象 ,然后判断 这个布尔对象是true 还是false
byte、short、int、和long 整数类型
byte、short、int、long都是整数类型,并且是有符号整数 分别占用1、2、4、8个字节,一个字节有8位。
类型 | 取值范围 |
---|---|
byte | -128—127 |
short | -2的15次方到2的15次方减一 |
int | -2的31次方到2的31次方减一 |
long | -2的63次方到2的63次方减一 |
byte在内存中占用一个字节 取值范围是
-128—127。在定义一个变量时。比如月份的取值是1到12。因此把代表月份的month变量定义为byte类型会节省内存空间。
在实际应用中 通常把month定义为int类型,因为这样可以简化数据运算时强制类型转换操作。
byte month = 1;
month = month+2;//编译错误 需要强转
month = (byte) (month+2); //编译正确
**Java中整型常量数值的默认类型是int类型**
char 字符类型
char是字符类型占用两个字节,java语言对字符采用Unicode字符编码。由于计算机内存只能存储二进制数据。因此必须对各个字符进行编码。
float和double 浮点类型(带小数)
float:占四个字节,共32位,称为单精度浮点数
double:占八个字节,共64位,称为双精度浮点数
Java中的浮点型常量数值默认是double类型