点击上方蓝色字体,选择“设置星标”
优质文章,第一时间送达
阿里巴巴开发手册,(四)OOP 规约,第 7 条解释说:
【强制】所有整型包装类对象之间值的比较,全部使用 equals 方法比较。说明:对于 Integer var = ? 在 - 128 至 127 范围内的赋值,Integer 对象是在 IntegerCache.cache 产 生,会复用已有对象,这个区间内的 Integer 值可以直接使用 == 进行判断,但是这个区间之外的所有数据,都会在堆上产生,并不会复用已有对象,这是一个大坑,推荐使用 equals 方法进行判断。
看下下面的代码,你猜结果是什么呢?请分析 30 秒看下结果。
public class IntegerTest {
public static void main(String[] args) {
Integer a = 100,
b = 100,
c = 200,
d = 200;
System.out.println(