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

相关内容

热门资讯

京东单甦:公司将动态平衡不同新...   炒股就看金麒麟分析师研报,权威,专业,及时,全面,助您挖掘潜力主题机会! (来源:网易科技)蓝...
“数字感”满满!市民企业代表走... (来源:上观新闻)今天(8月13日),长宁区“政府开放月”系列活动之“服务零距离、共绘数智长宁”主题...
首艘国产大型邮轮在深圳启航 来源:羊城派8月13日,爱达邮轮(Adora Cruises)旗下首艘国产大型邮轮爱达·魔都号搭载近...
中秘合营 钱凯港上半年集装箱吞... 中新社上海8月13日电 总部设于上海的中远海运集团13日对外发布信息称,今年上半年钱凯港完成集装箱船...
五个涨停板后,秦安股份自己“泼... 每经记者|黄胜    每经编辑|黄博文     8月13日盘后,“5连板”秦安股份...