2, 和equals的區別是什麼?

2021-10-01 12:10:14 字數 988 閱讀 4138

凡是比較基本型別都只能用==,比較的結果就是眼睛能看到的字面量,基本型別只有8種,byte,short,int,long,char,float,double,記住string不是基本型別。基本型別不是物件,所以不存在使用equals比較。

凡是比較引用型別(物件)的時候==和equals的使用是有區別的。==的使用是比較兩個引用(物件)是不是指向同乙個記憶體位址,equals比較的是字面量是不是一致。

基本型別的包裝類是物件型別,所以除非兩個相同字面量的引用指向同乙個記憶體位址,值才會相等。

string

str1

= "123abc";

string

str2

= "123abc";

system.out

.println(

str1

== str2

);//true

string

str3

= "123"

+ "abc";

system.out

.println(

str1

== str3

);//true

string

str4

=new

string(

"abc");

string

str5

=new

string(

"123");

string

str6

= str4

+ str5;

system.out

.println(

str1

== str6

);//false

string 字面量不可改變 +兩邊連線的字面量會直接認為是乙個完整的,不會建立新物件

和 equals 的區別是什麼?

string x string string y string string z newstring string system.out.println x y true system.out.println x z false system.out.println x.equals y true ...

和equals的區別是什麼

1 是關係運算子,equals是方法,結果都返回布林值 2 object類的和equals都是比較位址,作用相同 作用 jdk中的類一般已經重寫了equals 方法,比較的是內容 自定義的類如果沒有重寫equals方法,將呼叫父類的equals方法 可以根據自己的需求重寫equals方法,重寫equ...

和 equals 的區別是什麼

它的作用是判斷兩個物件的位址是不是相等。即,判斷兩個物件是不是同乙個物件。基本資料型別 比較的是值,引用資料型別 比較的是記憶體位址 equals 它的作用也是判斷兩個物件是否相等。但它一般有兩種使用情況 情況1 類沒有覆蓋 equals 方法。則通過 equals 比較該類的兩個物件時,等價於通過...