所谓128陷阱,指的是两个
Integer
对象在 ( − 128 , 127 ) (-128, 127) (−128,127) 范围内取相同值并且用==
进行判定时,返回为true
;如果在该范围之外取相同值判定则返回false
。
“==”和equals
- “==”是运算符,如果比较的数据是基本数据类型,则比较存储的值;如果是引用数据类型,则比较所指向对象的地址。
- equals是父类Object的方法,比较的是所指向的对象的地址,一般情况下,重写之后比较的是对象的值。
int和Integer
- Integer是int的包装类;int是基本数据类型。
- Integer变量必须实例化后才能使用;int变量不需要。
- Integer的默认值是null;int的默认值是0。
- 更多详情可以查看:Java中的8种基本数据类型及其存储方式。
128陷阱
- 两个
Integer
对象在