关于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比较)

相关内容

热门资讯

美股收盘:三大指数集体收涨 纳... 财联社12月20日讯(编辑 夏军雄)美东时间周五,在甲骨文和英伟达走强的带动下,人工智能(AI)概念...
贵阳有轨电车T2线主体硬件基本... 转自:贵州日报 本报讯(记者 冷赛楠)近日,“天眼问政”栏目收到网友留言:贵阳有轨电车T2线从比亚迪...
大山“用水三变” 转自:贵州日报 “以前靠山上小水源灌田,纯靠天吃饭。现在水龙头就在边上,要浇地直接打开就行。”69岁...
危房抢险施工公告 转自:贵州日报 贵阳市云岩区鸿雁巷17、19、20号及弯弓街6号住户:为消除贵阳市云岩区鸿雁巷17、...
“请3休8”带旺元旦假期云南旅...   本报讯 首席记者李思凡报道 “请3休8”带旺元旦游。12月19日,飞猪发布的数据显示,2026年...