1. 基本数据类型:
byte: 1个字节, 8位(bit),取值范围-128~127,默认值0
short: 2个字节,16位(bit),取值范围-32768~32717,默认值0
char: 2个字节,16位(bit),取值范围0~65535,默认值为空
int: 4个字节,32位(bit),取值范围-2147483648~2147483647,默认值0
long: 8个字节,64位(bit),取值范围-2^63~2^63-1,默认值0L
float: 4个字节,32位(bit),与double的区别在于float类型有效小数点只有6~7位,默认值0
double: 8个字节,64位(bit),默认值0
boolean:1个字节, 8位(bit),true or false
2. 引用类型(复合类型):
类、接口、数组:默认值 null
3. 不同类型值的比较
字面量String:直接给值的String变量,如:String a = "abc";
a、基本类型比较用”==“号,比较的是他们的值。
b、引用类型比较:
使用”==“:比较的是内存中的存放地址,
使用”equals“:这个方法的初始行为是比较对象在堆内存中的地址,但在一些诸如String,Integer,Date类中把Object中的这个方法覆盖了,作用被覆盖为比较内容是否相同。
4. 内存分配情况
基本类型:存储在栈内存中
引用类型:存储在堆内存中