誰能請解釋什麼是下面執行與字符串追加
的1)
{
String comma=",";
return finalStr = "Hello"+comma+"Welcome"+comma+"to"+comma+"Stack"+comma+"overflow";
}
2)
{
return finalStr = "Hello,Welcome,to,Stack,overflow";
}
多少字符串對象之間的區別的字符串將在第一個(1)塊中創建,將只有一個字符串finalStr
h表示存儲H ello,Welcome,to,Stack,overflow
的存儲位置,或者它將爲每個單詞創建多個位置,然後一旦添加,它將創建一個新的存儲位置。
你一樣說自己會從你想要追加的地方取得所有的字符串值,即「Hello」+逗號它會創建6個字符串,然後將它們放在一起作爲一個新字符串,並將其變爲一個值,如果我誠實地使用了字符串生成器,該字符串生成器效率更高,並且內容是可變的,沒有創建副本:-) – XAMlMAX
感謝您的回覆,:)。是的,我知道StringBuilder/StringBuffer然而,這個查詢只是爲了澄清JVM如何處理這種情況的字符串。 – Nikhil
當我使用類似的東西:返回新的StringBuilder(「你好,」+「歡迎,」+「至」,「+」堆棧,「+」溢出「); }這會創建不同的字符串爲你好,歡迎,到...? – Nikhil