【发布时间】:2016-05-20 13:49:36
【问题描述】:
我使用了以下字符串操作,但无法理解为什么第一种情况不起作用。
案例 - 1:
String myString = new String("old String");
System.out.println(myString);
myString.replaceAll( "old", "new" );
System.out.println( myString );
//Output
old String
old String
案例 - 2:
String myString = new String("old String" );
System.out.println(myString);
myString = new String("new String");
System.out.println(myString);
//Output
old String
new String
为什么案例 - 1 有效,但案例 - 2 无效?
【问题讨论】:
-
String.replaceAll() 返回带有更改的 String 的新实例。原来的 String 没有改变,因为 String 是不可变的。
标签: java