MartinYeung
MartinYeung

Love life Love IT IT blog: https://ithelp.ithome.com.tw/users/20119569

Java – “== “ 與 equals() 的分別

閱讀時間: 3分鐘

== operator

是用來判斷兩個比較物件是不是有相同的 references (參考或者引用)。

每一個物件都有獨立的reference,假如reference不相同就表示它們是不同的物件(Object)。

equals() method

是用來比較物件的值 (儲存在heap上的值)。

可以判斷兩個有不同references的物件是否指向相同的值。

例子解釋

public final class MyTest
{
    public static void main( String args[] )
    {
        String s1 = new String( "Martin" );
        String s2 = new String( "Martin" );

        System.out.println( s1 == s2 ); // 傳回false
        System.out.println( s1.equals( s2 )); //傳回true
    }
}
  • 不同的物件(Object)可以有相同的值
  • 每次創建新的物件(Object)都會有新的references (參考或者引用)


CC BY-NC-ND 2.0

Like my work?
Don't forget to support or like, so I know you are with me..

Loading...

Comment