我是測試字串,和我想出了下面的代碼:不同的輸出在同一個StringBuilder實例調用toString時
public static void main(String[] args){
StringBuilder sb1 = new StringBuilder("Cuba");
String str1 = sb1.toString();
// n1
System.out.println(str1 == str2);
}
在n1
如果我把:
String str2 = sb1.toString();
我得到false
。但是,如果我的地方:
String str2 = str1;
我得到true
。
我不知道爲什麼發生這種情況:兩個代碼指的是同一個實例,因此,這兩個輸出必須true
。
任何想法,爲什麼兩個輸出有什麼不同?我知道如何比較字符串,我只是好奇結果不同的原因。
我知道如何比較字符串。只是好奇他們之所以有所不同。 –
對此深感抱歉,我不是故意冒犯你。 –
我不覺得那樣:) –