--------------------- 
作者:狂飙的yellowcong 
来源:CSDN 
原文:https://blog.csdn.net/yelllowcong/article/details/78434606 
版权声明:本文为博主原创文章,转载请附上博文链接!

---------------------

Integer与int类型的关系

Integer是int的包装类,int的默认值是0,而Integer的默认值是null(jdk1.5的新特性 自动装箱和拆箱,Integer.valueOf() 和xx.intValue() ),

需要注意的是Integer里面默认的缓存数字是-128-127,

1、Integer与Integer相互比较,数据在-128-127范围内,就会从缓存中拿去数据,比较就相等;如果不在这个范围,就会直接新创建一个Integer对象,使用 == 判断的是两个内存的应用地址,所以自然不相等。

2、Integer和int类型相比,在jdk1.5,会自动拆箱,然后比较栈内存中的数据,所以没有不想等的情况

int跟int比较

int数据类型,都是在栈内存中存储,如果这个数字在栈内存中存在就会直接指向这个内存地址,如果不存在,就会重新开辟内存空间,所以int和int类型的比较,相同的值不会存在内存不等的情况

八个基本数据类型不能看作对象(这点很特殊),存放在栈中。栈内操作速度快,创建销毁很容易

int跟Integer比较

会自动拆箱,变成int与int对比

Integer跟Integer比较

  在-128~127的范围内,==会相等,获取的cache的地址

  不在上述范围内,会去new一个对象对比

  直接new对象的话,肯定不等于

虽千万人,吾往矣!

java中int和Integer对比的一些坑相关推荐

  1. Java中int和Integer的区别

    int 是基本类型,直接存数值 integer是对象,用一个引用指向这个对象 1.Java 中的数据类型分为基本数据类型和复杂数据类型 int 是前者>>integer 是后者(也就是一个 ...

  2. JAVA中int 是什么意思,java中int和Integer什么区别

    java中int和Integer的区别  一看就懂 int 是基本类型,直接存数值 integer是对象,用一个引用指向这个对象 1.Java 中的数据类型分为基本数据类型和复杂数据类型 int 是前 ...

  3. 016 Java中 int、Integer和 new Integer() 使用==比较

    Java中 int.Integer和 new Integer() 使用==比较 int则是java的一种基本数据类型,其定义的是基本数据类型变量 :Integer是int的包装类,其定义的是引用类型变 ...

  4. Java 中 int和Integer比较

    下文笔者讲述java中int和Integer类型的比较,如下所示 int和Integer类型比较 1:Integer是int的包装类,int则是java的一种基本数据类型 2:Integer变量必须实 ...

  5. Java中int[]与Integer[]相互转化的方法

    传统方法 //Convert int[] to Integer[] public static Integer[] toObject(int[] intArray) {Integer[] result ...

  6. Java中Int、Integer、new Integer()之间的区别

    Java中有八种基本数据类型,Int是其中之一.而Integer是Int的封装,即Integer其实是一个对象.可以通过new来创建一个Integer对象,也可以直接将Int值赋给Integer变量. ...

  7. java中int和integer的区别_Java异常中throw和throws关键字的区别

    Java中常常弄混的两个关键字,throw和throws,它们有什么区别呢?如何记忆他们,而不至于出错呢? throw和throws 区别 throws:出现在方法的签名中,声明当前方法可能抛出的所有 ...

  8. java integer == int_Java中int和Integer的区别详解

    1.Java 中的数据类型分为基本数据类型和复杂数据类型 int是前者>>integer 是后者(也就是一个类) 2.初始化时>> int i =1; Integer i= n ...

  9. Java中int和short的取值范围_java中short、int、long、float、double取值范围

    1. 基本类型:int 二进制位数:32 包装类:java.lang.Integer 最小值:Integer.MIN_VALUE= -2147483648 (-2的31次方) 最大值:Integer. ...

最新文章

  1. [转载]《博客园精华集》Winform筛选结果(共105篇)
  2. 自动化测试8大元素定位之xpath语法
  3. 浏览器兼容--条件样式,选择符前缀,样式属性前缀(转)
  4. Flask 报错 RuntimeError: No application found. Either work inside a view function or push an applicati
  5. 如何正确创建DLL和使用DLL
  6. 买写真送手机系列 小米9王源限量版预售将在这些小米之家开启
  7. 网页特效代码大全网址
  8. 证明一维热传导方程为抛物型方程
  9. Python程序设计
  10. windows10 无法设置屏幕保护程序
  11. RO-data、RW-data、ZI-data的解释
  12. 剑指Offer面试题11(Java版):数值的整数次方
  13. BJ模拟 Different Trips【树上后缀数组】
  14. unity操作详细教程
  15. 怎样制作传奇私服服务器,新手传奇gm必须学会如何制作传奇私服小地图
  16. FFmpeg从视频中提取音频保存为mp3文件
  17. 搭建IPv6签到服务器,并使用FRP获取IPv6信息
  18. c语言程序设计教程韩立毛答案,c语言程序设计教程201X韩立毛徐秀芳书后练习题参考答案...
  19. 速卖通装修html自定义代码,Shopify基础建站教程,独立站装修主题代码设置
  20. 【转载】Python3.6安装报错 configure: error: no acceptable C compiler found in $PATH

热门文章

  1. 读过的设计模式的书小结
  2. 数据结构实验病毒感染检测问题(C++)
  3. 裴蜀(贝祖)定理及其证明
  4. 项目需求:基于微信平台的拼团活动系统
  5. CPython对象模型:基础
  6. 转载:面向站长和网站管理员的Web缓存加速指南
  7. ansys icem cfd网格划分技术实例详解_详解航空燃油滑油3D打印热交换器设计流程...
  8. 学堂在线计算机网络工程实践答案,计算机网络实验(本科生2017年春)
  9. linux 建立用户kde目录,安装KDE Plasma后,你要做的七件事
  10. linux 神奇命令,Linux 命令神器:lsof 入门