2013-05-26 239 views
0

假設我有一個字符串,String x = "oncetherewasaboy"; 我想用""替換"there"。我試過x.replace("there","");但是這並沒有消除它。這不是最好的例子,但我正在做一個字符串數組,並且想用""來清理和過濾每個索引中的一些信息。謝謝!字符串替換爲「」Java

+0

對。刪除。 –

+2

Javadoc是你的朋友。只需引用'replace'的return語句:'返回:通過用newChar替換每個出現的oldChar,從此字符串派生的字符串。' – user2336315

+0

^^'返回由newChar替換此字符串中出現的所有oldChar而產生的新字符串。 '字符串在Java中是不可變的;你不能改變它們。 –

回答

6

字符串是不可變的。調用replace()不會更改字符串。它創建一個新的並返回它。您需要將引用保存到一個變量中,否則您將無法訪問它。您需要:

x = x.replace("there", ""); 
0

字符串是不可變的類型。一個不可變對象是一個對象,它的狀態在創建後不能被修改。所以你不能修改字符串x。

因此,您不能修改字符串,替換方法返回一個新的字符串與新的更改。所以作爲jlordo已經建議你需要像下面這樣使用

x = x.replace("there", "");