Java笔记-int和Integer的区别

Java学习笔记:int和Integer的区别

1.int是java的八大基本数据类型之一,Integer是它的包装类。
2.Integer必须实例化之后才能引用,而int 不需要。
3.Imteger是实际是对象的引用,而int直接存储数据值。
4.int的默认值是0,Integer的默认值是null。
首先java中Byte,Short,Integer,Long,Character,Boolean都实现了常量池技术***,这里通过一些代码来理解int和Integer*的区别。

1比较两个Integer值。Imteger是实际是对象的引用,即new之后的在堆中开辟两个不同的空间。这里的返回值为false。

        Integer i=new Integer(100) ;//new Integer()生成的变量指向堆中新建的对象
        Integer j=new Integer(100) ;
        System .out.print(i==j) ;//false

2.比较Integre和int的值。java类中Integer和int比较自动拆箱成int型,变成两个int 值比较。只要数字相等则返回true。

        Integer i=new Integer(100) ;//java类中Integer和int比较自动拆箱成int型
        int j=100 ;
        System .out.print(i==j) ;//true

3、非new生成的Integer变量和new Integer()生成的变量比较时,结果为false。

        Integer i=new Integer(100) ;///new Integer()生成的变量指向堆中新建的对象
        Integer j=100;//指向Java中的常量池的对象
        System .out.print(i==j) ;//flase

4.对于两个非new生成的Integer对象比较,如果数字范围在-127到127之间,则返回true,否则返回flase。

        Integer i=100 ;
        Integer j=100;
        System .out.print(i==j) ;//true
        Integer i=255 ;
        Integer j=255;
        System .out.print(i==j) ;//false 

参考:https://www.cnblogs.com/guodongdidi/p/6953217.html
https://blog.csdn.net/qq_26947195/article/details/79505553

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值