栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

语法糖---自动拆装箱机制

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

语法糖---自动拆装箱机制

自动拆装箱机制是jdk1.5版本之后才有的机制,因为用起来很舒心,所以有了语法糖这个说法!(jdk1.5版本之前是手动拆装箱的哈!)

自动装箱:自动将基本类型转换成他对应的包装类型.
自动拆箱:自动将包装类型转换成天对应的基本类型.

public class Test {
    public static void main(String[] args) {
          
            //自动装箱
            int num = 200;
            Integer integer = num;

            
            Integer a = new Integer(20);
            Integer b = new Integer(120);
            //自动拆箱
            int sum = a + b; 
            System.out.println(sum);
            
            Integer i = 100; //自动装箱
            i += 200; //先自动拆箱,再自动装箱

        }
    }

jdk1.5版本之前是手动拆装箱!

public class Test {
    public static void main(String[] args) {
            
        //手动装箱
        Integer integer = Integer.valueOf(100);

        Integer a = new Integer(5);
        Integer b = new Integer(15);
        //手动拆箱
        int i = a.intValue();
        int j = b.intValue();
        System.out.println(i + j);

        }

    }

补充:自动拆装箱里面有一个定律就是自动拆装箱的数字如果大于127,那么俩个对象的地址值不相等,如果小于等于127,那么俩个对象的地址值是相等的!

public class ChaiZhuangXiangTest {
    public static void main(String[] args) {
           
        Integer sum1=128;
        Integer sum2=128;

        Integer sum3=127;
        Integer sum4=127;

        //Integer中重写了equals方法,重写之后判断的是内容是否相等.所以用==判断地址值是否相等.
        System.out.println(sum1==sum2);       //false
        System.out.println(sum3==sum4);       //true

        }
    }

其原因需要认真查看底层代码实现才能懂! 其详细介绍在这里!    ------>    这里这里!

(小编也在努力学习更多哟!以后再慢慢挖掘,慢慢补充啦!)

希望对友友们有所帮助!!!!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/856900.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号