将空格替换为连字符字符串是不可变的。

2022-09-02 05:03:35

我正在尝试将空格字符替换为字符串中的连字符。

String replaceText = "AT AT";
replaceText.replace(' ', '-');

但是当我这样做时,我似乎无法取代这个角色。我尝试了该方法,它也不起作用。replaceAll()

++++++答案+++++++

对不起,我的错误..深夜编程的结果:(

感谢您的答案,我可能无法回答所有问题,所以我将检查第一个答案

replaceText = replaceText.replace(' ', '-');

答案 1
replaceText = replaceText.replace(' ', '-');

字符串是不可变的,创建后无法更改。所有以某种方式修改字符串的方法都将返回一个包含修改的新字符串。


答案 2

字符串是不可变的。

您需要保存 返回的值。如果要替换多个匹配项,请使用 replaceAll()。replace()

String replaceText = "AT AT";
replaceText = replaceText.replaceAll(" ", "-");

正如@Mark Peters在评论中指出的那样,足以(并且更快)替换所有事件。replace(Char, Char)

String replaceText = "AT AT";
replaceText = replaceText.replace(' ', '-');

万一这个事实困扰着你:不变性是一件好事