我正在閱讀有關如何比較Java中String的等式的一些說明。不同的字符串s1 =「abc」和字符串s1 =新的字符串(「abc」)?
String s1 = new String("abc");
String s2 = new String("abc");
這兩個分配在不同的內存中,所以它們的引用是不同的。 當我們調用
if (s1 == s2){ .. } // Comparing the reference, so return false
if(s1.equal(s2)){..} // Comparing content, so return true
那麼,什麼是
String s3 = "abc"
String s4 = "abc"
?
如何分配內存,當我做不同的平等檢查,會發生什麼?
例如:
s3==s4
s3.equal(s4)
s3.equal(s1)
爲什麼不嘗試? – YMomb