当前位置: 首页 > 面试题库 >

Java:== 和 equals 的区别是什么?

黄飞翮
2023-04-24
  1. 对于基本类型,==比较的是值;
  2. 对于引用类型,==比较的是地址;
  3. equals不能用于基本类型的比较;
  4. 如果没有重写equals,equals就相当于==;
  5. 如果重写了equals方法,equals比较的是对象的内容;
 类似资料:
  • 问题内容: 我今天换了讲师,他对我说了奇怪的代码。(他说最好用,当我问为什么时,他回答“因为是!”) 所以这是一个例子: 而不是我习惯的: 两者之间有什么区别。为什么他的方式(使用)更好? 通过快速搜索发现了这一点,但我无法真正理解该答案: 问题答案: 在Java中,总是只比较两个引用(对于非原始元素),即,它测试两个操作数是否引用同一对象。 但是,该方法可以被覆盖-因此两个不同的对象仍然可以相等

  • 问题内容: 在java中==和equals的区别? 问题答案: .equals(…) 只会比较所写的内容进行比较,不会多也不会少。 如果一个类没有覆盖equals方法,则默认为equals(Object o)覆盖了该方法的最接近的父类的方法。 如果没有父类提供重写,则它默认为最终父类Object中的方法,因此你只能使用该Object#equals(Object o)方法。根据对象API,这与==;

  • 问题内容: 我知道已经解决了这个问题,但是我在SO上看到了不一致的论点。 所以,如果我有: 我得到 FALSE 。 据我了解,这是因为和是对同一对象()的两个不同引用。 所以我会有类似的东西: 现在,如果我只想比较两个字符串的 内容 ,我将使用 这是否意味着如果两个引用指向同一个对象,JVM就会简单地返回?因此,它不是在逐个字符地进行比较吗? 谢谢 编辑 拿着电话。感谢您指出优先顺序!!! 当我将

  • 本文向大家介绍#{}和${}的区别是什么?相关面试题,主要包含被问及#{}和${}的区别是什么?时的应答技巧和注意事项,需要的朋友参考一下 #{}是预编译处理,${}是字符串替换。 Mybatis 在处理#{}时,会将 sql 中的#{}替换为?号,调用 PreparedStatement 的 set 方法来赋值; Mybatis 在处理{}时,就是把${}替换成变量的值。 使用#{}可以有效的防

  • 本文向大家介绍== 与 equals 的区别?相关面试题,主要包含被问及== 与 equals 的区别?时的应答技巧和注意事项,需要的朋友参考一下 == 解读: 对于基本类型和引用类型 == 的作用效果是不同的,如下所示: 基本类型:比较的是值是否相同; 引用类型:比较的是引用是否相同; 代码示例:   代码解读:因为 x 和 y 指向的是同一个引用,所以 == 也是 true,而 new Str

  • 本文向大家介绍Java中==与equals的区别小结,包括了Java中==与equals的区别小结的使用技巧和注意事项,需要的朋友参考一下 s2==s3的运算结果为:false  s1==s3的运算结果为:true  s2.equals(s3)的运算结果为:true  总结: == 与 equals()比较的内容是不同的,equals()方式是String类中的方法,它用于比较两个对象引用所指的内