在Java中,为什么String.Replace之后的String值没有更改?
我对此下面的程序有疑问
请参阅下面的程序
public class Kiran { public static void main(String args[]) {
String str = "Test";
str.replace('T', 'B');
System.out.println("The modified string is now " + str);
}
}
我期望的是,一旦运行此程序,我应该将putput视为Best,但是令我惊讶的是输出是Test。
谁能告诉我,为什么会这样?
提前致谢 。
回答:
字符串在Java中是不可变的,这意味着您无法更改它们。当您调用replace方法时,您实际上是在创建一个新的String。
您可以执行以下操作:
String str = "Test";str = str.replace('T', 'B');
这是重新分配。
以上是 在Java中,为什么String.Replace之后的String值没有更改? 的全部内容, 来源链接: utcz.com/qa/409103.html