通过基本概念区分:

1、Integer 是 int 的包装类,int 则是 java 的一种基本数据类型;

2、Integer 变量必须实例化后才能使用,而int变量不需要 ;

3、Integer 实际是对象的引用,当new一个 Integer时,实际上是生成一个指针指向此对象;而 int 则是直接存储数据值 ;

4、Integer的默认值是null,int的默认值是0

Integer、new Integer()和int的比较

1、、Integer变量 和 new Integer() 变量比较 ,永远为 false。因为 Integer变量 指向的是 java 常量池 中的对象, 而 new Integer() 的变量指向 堆中 新建的对象,两者在内存中的地址不同。

2、两个Integer 变量比较,如果两个变量的值在区间-128到127 之间,则比较结果为true,如果两个变量的值不在此区间,则比较结果为 false。比如:

Integer i = 100;

Integer j = 100;

System.out.print(i == j); //true

Integer i = 128;

Integer j = 128;

System.out.print(i == j); //false

3、 int 变量 与 Integer、 new Integer() 比较时,只要两个的值是相等,则为true, 因为包装类Integer 和 基本数据类型int 比较时,java会自动拆包装为int ,然后进行比较,实际上就变为两个int变量的比较。

Integer、new Integer()和int的区分与比较相关推荐

  1. int、Integer、new Integer和Integer.valueOf()的 ==、equals比较

    Java 基本数据类型的包装类型的大部分都用到了缓存机制来提升性能. Byte,Short,Integer,Long 这 4 种包装类默认创建了数值 [-128,127] 的相应类型的缓存数据,Cha ...

  2. 常量缓存与integer比较_Integer和int使用==进行比较大小时的坑

    先看一个例子: public static void main(String[] args) { int i1 = 128; Integer i2 = 128; Integer i3 = new In ...

  3. javabean注意事项之用Integer替换你的int

    话不多说,上代码! 1.一开始,我的javabean是这样的 [java] view plaincopy public class User { private String uniqueid; pr ...

  4. 【Java】中int 和 Integer 与 new Integer() 的区别,int 可以使用 == 来对比两个变量是否相等,而 Integer 一定要使用 equals 来比较两个变量值是否相等

    目录 一.int 和 Integer 的区别 二. Integer.new Integer() 和 int 的比较 三.总结 四.更多详看: 一.int 和 Integer 的区别 两者的区别主要体现 ...

  5. Integer和Integer比较以及Integer和Int的比较分析

    发现做项目的过程中,在数值类型的比较上容易犯错,特别是Integer和Integer的比较,Integer和int的比较.虽然这些都是些基础语法,但稍不留意就容易犯错,在实际开发过程中如果出现这类失误 ...

  6. new Integer 和 Integer.valueOf 有什么不同

    2019独角兽企业重金招聘Python工程师标准>>> @Testpublic void testHashCode() throws Exception {//[1237514926 ...

  7. (Integer) 128 == (Integer) 128 为false详细解读

    所学知识 这里涉及到的知识点为Java的自动装箱.拆箱问题 先看简单示例: 第一组输出为true,第二组false,第三组false.第二组false很正常因为Integer对象地址不同,但为什么第一 ...

  8. Java的Integer和Integer比较相等

    Integer是包装类(引用数据类型),int是基本数据类型, Integer a=12; Integer b=12; //a==b为true: Integer c=1200; Integer d=1 ...

  9. Integer i1 = 10;和Integer = new Integer(10);的区别

    首先我们要明白Integer是引用数据类型,是包装类(封装类) 1.5版本之后,存在自动拆装包.他是int类型对应的封装类. Integer是直接继承于Number类间接继承于Object类 ,实现了 ...

最新文章

  1. centos7 升级openssh7.4之后 报错
  2. 甲骨文们是怎么被干掉的
  3. The request was denied by service delegate (SBMainWorkspace) for reason: Uns
  4. 判断用户输入的日期是否为当前日期
  5. [CODEVS 1281] Xn数列
  6. ABAP table buffer test
  7. 模板:容斥优化多重方案背包
  8. 计算机硬盘按不同接口,硬盘接口不同 速度差别竟然这么大
  9. 树--树的基本性质(JAVA)
  10. 动态三角形(动态规划思想入门)
  11. 用例驱动的需求过程实践
  12. MySQL进阶书籍推荐
  13. 杭州电子科技大学第三届网络攻防大赛初赛题目
  14. 【转】谈一谈今年的移动互联网寒冬
  15. ARM的CF卡驱动分析
  16. [C#] NAudio 各种常见使用方式 播放 录制 转码 音频可视化
  17. DDR中bank,die,rank,channel的概念
  18. Revit中添加了标高看不见原来轴网解决方法及轴网转化
  19. 教你文件改名后怎么恢复回原来名字
  20. python+vue高校图书借阅管理系统

热门文章

  1. 怎么查看war包代码
  2. windows 10 ISO 纯净版 官方来源
  3. cufflinks一行代码搞定plotly
  4. 年薪60万+?这份10万字的面试突击宝典涵盖阿里 P5 工程师~P7 所有技术栈
  5. 如何从request中获取域名
  6. onsubmit表单提交简单使用
  7. 手机的 32K,26M时钟电路作用 (转载于 52rd zsqt8888的专栏)
  8. java jtextarea字体_Jtextarea如何设置不同字体、颜色
  9. Android Studio 布局 - ScrollView和HorizontalScrollView
  10. 09、IO流—File类与IO流