【特種兵系列】String中的==和equals()

1. 小樣示例

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

2.基礎分析

「==」分析:==是用來匹配內存單元上的內容,其實質就是一個數字,Java語言用==匹配時其實就是對比兩個內存單元的內容是否同樣。如下原始類型即爲直接比較值:byte、boolen、short、char、int、long、float、doublespa

相關文章
相關標籤/搜索