Java-字符串替换方法不替换字符

我有一个以字符串形式传递的句子,我正在对单词“ and”进行替换,我想用“”替换它。而且它不是用空格替换“和”一词。以下是我的逻辑示例。而当我调试此逻辑时,逻辑确实落入了句子。

String sentence = "Define, Measure, Analyze, Design and Verify"

if (sentence.contains("and")){

sentence.replace("and", " ");

}

这里有我想念的东西吗?

回答:

而当我调试此逻辑时,逻辑确实落入了句子。

是的,然后你放弃返回值。

Java中的字符串是不可变的-当你调用时replace,它不会更改现有字符串的内容-它会返回经过修改的新字符串。所以你要:

sentence = sentence.replace("and", " ");

这适用于所有的字符串(方法substring,toLowerCase等等)。它们都不更改字符串的内容。

请注意,你实际上并不需要在某种情况下执行此操作-毕竟,如果该句子不包含”and”,执行替换也不会造成损害:

String sentence = "Define, Measure, Analyze, Design and Verify";

sentence = sentence.replace("and", " ");

以上是 Java-字符串替换方法不替换字符 的全部内容, 来源链接: utcz.com/qa/426647.html

回到顶部