Integer和int的比较详解

https://blog.csdn.net/andyzhaojianhui/article/details/84324466

equals()方法用于判断参数的类型和数值是否相等,注意类型和数值两个都需要相等!

public class Test {public static void main(String[] args){Integer a=5;Integer b=10;Integer c=5;short d=5;System.out.println(a.equals(b));System.out.println(a.equals(c));System.out.println(a.equals(d));}
}

结果为

false
true
false

虽然a与d的值相等,但它们的类型不一样,a.equals(d)结果仍为false。若将判断语句改为a==d,则结果为true,因为它们所比较的仅仅是值。

在String类中,equals()被重写,用于比较字符串的内容是否相同,而==用于比较引用地址是否相同。

菜鸟教程中String类里==与equals()区别

String s1 = "Hello";              // String 直接创建
String s2 = "Hello";              // String 直接创建
String s3 = s1;                   // 相同引用
String s4 = new String("Hello");  // String 对象创建
String s5 = new String("Hello");  // String 对象创建s1 == s1;         // true, 相同引用
s1 == s2;         // true, s1 和 s2 都在公共池中,引用相同
s1 == s3;         // true, s3 与 s1 引用相同
s1 == s4;         // false, 不同引用地址
s4 == s5;         // false, 堆中不同引用地址s1.equals(s3);    // true, 相同内容
s1.equals(s4);    // true, 相同内容
s4.equals(s5);    // true, 相同内容

其中,s1,s2,s3都创建于公共池中,所以他们的引用地址和内容均相同,而s4,s5是使用new来创建的,在堆中创建的,他们虽然内容相同,但是引用地址却不相同。

java关于Integer和int的区别以及equals()方法相关推荐

  1. Java基础 - Integer和int的区别

    一.int和Integer的区别 两者的区别主要体现在以下几个方面: 1.数据类型不同:int 是基础数据类型,而 Integer 是包装数据类型: 2.默认值不同:int 的默认值是 0,而 Int ...

  2. Java中关于==和equal的区别 以及equals()方法重写

    例子i: string1="aaa"; string2="aaa"; String string3=new String("aaa"); S ...

  3. Java面试题15牛客 以下关于Integer与int的区别错误的是

    Java面试题15牛客 以下关于Integer与int的区别错误的是 A int是java提供的8种原始数据类型之一 B Integer是java为int提供的封装类 C int的默认值为0 D In ...

  4. 你知道Integer和int的区别吗

    最近小康面试,突然被面试官问道,说一下Integer和int的区别.额-可能平时就知道写一些业务代码以及看一些自己觉得比较高大上的东西,包括面试也看的一些Spring源码等,对于这种java特别基础的 ...

  5. Integer与int的区别

    如果面试官问Integer与int的区别:估计大多数人只会说道两点,Ingeter是int的包装类,int的初值为0,Ingeter的初值为null.但是如果面试官再问一下Integer i = 1; ...

  6. Integer 和 int 的区别

    一.int 和 Integer 的区别: Integer 是 int 的包装类,int 是 java 中的基本数据类型. Integer 对象必须是实例化后才能使用,而 int 变量不需要实例化. I ...

  7. Integer 与 Int 的区别

    Integer 类整形 与  Int 整形 的区别 最近在翻java的源码,发现了一些平常不注意,但很容易出错的东西,最近有空的话就整理出来. Integer:是一个int的包装类,Integer变量 ...

  8. integer比较_每日一题:Integer、int 的区别

    点击上方蓝色字体,选择"标星公众号"优质文章,第一时间送达来自 | chenxiangxiang链接 | cnblogs.com/cxxjohnson/p/10504840.htm ...

  9. Integer和int的区别

    1.Integer是int的包装类,int则是java的一种基本数据类型 2.Integer变量必须实例化后才能使用,而int变量不需要 3.Integer实际是对象的引用,当new一个Integer ...

最新文章

  1. 图的邻接矩阵存储结构
  2. Ajax处理函数模板
  3. Ajax — 第三天
  4. Qt文档阅读笔记-QTcpServer官方解析与实例(使用QSocket创建简单的HTTP服务器)
  5. win10 安装Pytorch GPU版+CUDA+cuDNN(篇幅较长保姆教程) (含CUDA11.1与cuDNN8.0.4安装包)
  6. form data和request payload的区别
  7. Dubbo面试18问!这些你都会吗?
  8. java初学。加载图片
  9. IDEA API文档的导出方式
  10. win10哪个版本最好用,推荐win10企业版LTSC
  11. 计算机时钟周期的概念,指令周期、时钟周期、总线周期概念辨析
  12. 用一台笔记本跑ROVIO
  13. Android Banner图片轮播第三方框架
  14. Oracle Class6-1. PL/SQL 简介(数据类型,逻辑比较,控制结构,错误处理)
  15. 【记】Java 类属性首字母大写Response其结果为小写
  16. 0428-Scrum团队成立
  17. mantis问题状态
  18. 【洛谷】P1150 Peter的烟(配数学证明)
  19. (PDC2008)Anders Hejlsberg: The Future of C#
  20. 教师资格证网站内部服务器错误,教师资格证报名入口_教师资格证ntce_教师资格证报名入口进不去咋办?...

热门文章

  1. 绘制破碎的蛋壳于小女孩合成的效果!
  2. jquery数组及对象赋值不影响原对象及数组的方法
  3. 让VirtualBox中的系统全屏显示
  4. ATF中smc指令详解
  5. 万字长文教你阿里问题定位神器 Arthas 的骚操作,定位线上BUG,超给力!
  6. HTTP协议【报文格式】
  7. android 选择年月日控件(DatePick简单好用)
  8. ffmpeg 4.2编译出现recompile with -fPIC问题
  9. verilog generate语法总结
  10. 深度学习之真实值,预测值和观测值之间的区别