关于java虚拟机第三版自动装箱拆箱的笔记
创始人
2024-03-28 11:16:13
        Integer a = 1;Integer b = 2;Integer c = 3;Integer d = 3;Integer e = 321;Integer f = 321;Long g = 3L;System.out.println(c == d);//true                Integer比较内存堆对象地址(有缓存-128~127)System.out.println(e == f);//false               Integer比较内存堆对象地址(无缓存-128~127)System.out.println(c == (a + b));//true          a + b自动拆箱成基础int,满足有一边是基础的,那么两边都是拆箱基础int的字面值System.out.println(c.equals(a + b));//true       a + b自动拆箱成基础int,调用equals时候又自动装箱成equals的Integer参数***System.out.println(g == (a + b));//true          a + b自动拆箱成基础int,满足有一边是基础的,那么两边都是拆箱基础,同时自动向上提升转型long的字面值System.out.println(g.equals(a + b));//false      a + b自动拆箱成基础int,调用equals时候又自动装箱成equals的Integer参数***(这里不会转Long参数)System.out.println(e == 321);//true              e自动拆箱成基础int,满足有一边是基础的,那么两边都是拆箱基础的计算
	最佳实践:a、b最好要么都是int(==比较),要么都是Integer(equals比较)a、b最好要么都是long(==比较),要么都是Long(equals比较)

相关内容

热门资讯

美股异动 | 比特币概念股盘前... 周二,比特币概念股盘前走低,截至发稿,Strategy(MSTR.US)跌超2.6%,Coinbas...
春节不打烊 他们坚守在能源保供... 转自:草原云2月16日农历大年除夕晚上11点半,中国石油呼和浩特石化公司厂区灯火通明,各条装置线灯光...
新春走基层|山脊上的守望 转自:新华社新华社天津2月16日电 题:山脊上的守望新华社记者马博文早春时节,天津市蓟州区北部的山区...
加拿大1月通胀率放缓至2.3%...   加拿大1月整体通胀率放缓至2.3%,低于经济学家预期的2.4%,主要因汽油价格同比下降。  加拿...
新春走基层|抬头就是金门,他们... (来源:千龙网) 20吨重的水泥罐车像“飞天”一样被轻盈...