Java中 和equals 的區別

2021-07-23 21:04:13 字數 1004 閱讀 9923

1.==用於比較引用資料型別和比較基本資料型別時具有不同的功能:

比較基本資料型別,如果兩個值相同,則結果為true。

eg:

package demo;

public

class demo

boolean compare(int x ,int y)else

return

false;

}}

這段**返回false。

而在比較引用資料型別時,如果引用指向記憶體中的同一物件,結果為true

eg:

package demo;

public

class demo

public

demo(int x)

public

static

void

main(string args)

boolean compare(demo x ,demo y)else

return

false;

}}

這段**返回false,因為a,b雖然內容一致,卻指向不同的物件。

2.equals 方法(是string類從它的超類object中繼承的)被用來檢測兩個物件是否相等,即兩個物件的內容是否相等,區分大小寫。

eg:

package demo;

public

class demo

boolean compare( string x ,string y)else

return

false;

}}

返回true,因為兩個物件的內容一樣。

總結:

(1)比較基本資料型別的資料是否相等,如int,long,floar,double等資料型別,用「== 」比較。

(2)比較string等引用資料型別資料是否相等,用equals()來比較。

java中 和 equals區別

是比較2個物件是否相等,物件包括基本型別的變數和引用型別變數 object類是所有類的父類 並且 equals是其中的方法 所以說 和equals 本質上都是一樣的 object 類中的equals 方法是 public boolean equals object o return this o 其...

Java中 和equals的區別

我們在寫程式的過程中,判斷會將兩個物件進行對比。比如拿字串來說吧!string hello hello string greeting hello string str new string hello system.out.println hello.equals greeting hello.e...

java中 和equals的區別

和 equals 都是比較是否相等,請問它們到底有什麼區別呢?相等 a 傳統的理解一般都是數字值是否相等 b 在程式中任何東西都是資料,都會比較是否相等 物件 比較運算子 1 基本資料型別變數 比較的就是值是否相等 2 引用資料型別變數 比較的是物件的位址是否一樣 排除特殊 string equal...