public static void main(String[] args) { String a = "a" + "b" + 123; String b = "ab123"; System.out.println(a == b); }
true
public static void main(String[] args) { String a = "a" + "b" + 123; String b = "ab123"; System.out.println(a.equals(b)); } true
比較兩段代碼,不同的地方在於 a==b 和a.equals(b) ,可是輸出結果卻都是true,(剛接觸java時的印象是:兩個對象的比較是用equals(),==是沒法匹配字符串的,可是上述結果卻說明了個人印象並不是正確)java
「==」分析:==是用來匹配內存單元上的內容,其實質就是一個數字,Java語言用==匹配時其實就是對比兩個內存單元的內容是否同樣。如下原始類型即爲直接比較值:byte、boolen、short、char、int、long、float、doublespa