有关String
public class Test {public static void main(String[] args) {
String str = "abcde";
str.replaceAll("a", "");
System.out.println(str);
}
}
以上程序的输出结果仍然是abcde,原因是由String类创建的对象是不可修改的,即String对象一旦创建,实体是不可以再发生变化的。
以上程序虽然str调用了String类的方法replaceAll(String old,String new),此过程的确又另外创建了一个String对象,但是没有引用指向此对象,因此也无法访问此对象。
将以上程序修改一下:
public class Test {
public static void main(String[] args) {
String str = "abcde";
str = str.replaceAll("a", "");
System.out.println(str);
}
}
结果便是bcde,语句str = str.replaceAll("a","")创建了一个新的字符串对象,并且由str作为此对象的引用。