equals与==的区分

Posted 明叶师兄。

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了equals与==的区分相关的知识,希望对你有一定的参考价值。

equals与==的区分

对于比较数值

public class Test {
public static void main(String[] args){
    int a=30;
    int b=30;
    System.out.println("hellow world!");
    System.out.println(a==b);
    }
}

运行结果:
hellow world!
true

对于比较字符串时,

==比较的是地址,其内容分别保存在了不同的空间,所以即使内容相等,但是地址的值是不相等的。

public class Test {
public static void main(String[] args){
    String a="hellow";
    String b=new String("hellow");
    String c=b;
    //System.out.println("hellow world!");
    System.out.println(a==b);
    System.out.println(a==c);
    System.out.println(b==c);
    }
}
运行结果:
false
false
true

而equals只是比较的是字符串内容而不是地址,但是这里涉及到数据库char和varcha的区别,空格equals是能识别出来的。

public class Test {
public static void main(String[] args){
    String a="hellow";
    String b=new String("hellow");
    String c=b;
    //System.out.println("hellow world!");
    System.out.println(a.equals(b));
    System.out.println(a.equals(c));
    System.out.println(b.equals(c));
    }
}
运行结果:
true
true    
true

以上是关于equals与==的区分的主要内容,如果未能解决你的问题,请参考以下文章

leetcode_1292. Maximum Side Length of a Square with Sum Less than or Equal to Threshold_[二维前缀和](代码片段

hashcode()与equals()方法(第8周)

小知识点记录:(“字符“).equals(str)与str.equals(“字符“)的区别

如何重构这个 Java 代码片段

Java面试题:hashCode() 和 equals()

如何在 python 中并行化以下代码片段?