3 回答

TA貢獻1876條經(jīng)驗 獲得超6個贊
這可能是因為 == 比較地址時相等比較內(nèi)容示例
String s1 = new String("sd");
String s2 = new String("sd");
System.out.println(s1 == s2);
System.out.println(s1.equals(s2));
當(dāng)?shù)诙€返回 true 時,第一個返回 false

TA貢獻1811條經(jīng)驗 獲得超5個贊
哦,這是一個很好的。Boolean.toString(stringA == stringB)實際上是在做參考比較;也就是說,檢查兩個對象是否指向相同的內(nèi)存位置。String.equals(),另一方面,比較值。
String A = new String("five");
String B = new String("five");
System.out.println(Boolean.toString(A == B)); // false.
System.out.println(Boolean.toString(A.equals(B))); // true
此外, theBoolean.toString(A.equals(B))可以替換為A.equals(B),這將返回相同意義上的布爾值。

TA貢獻2036條經(jīng)驗 獲得超8個贊
此行將btnText==messageReceived
始終返回 false,因為兩者都沒有指向同一個對象。
equals 方法匹配內(nèi)容,其中 as == 運算符匹配指向同一地址的對象。閱讀本文檔以了解有關(guān) == 和 equals 的更多信息。 == 與等于
希望這對你有幫助
添加回答
舉報