package lingxingtest;
class Test{
public static void main(String[] args) {
String s1 = "java";
String s2 = "hello";
// s1=s2;//s2的引用赋给了s1,s1指向了s2的对象,所以输出的是s2的内容
// System.out.println(s1+"...."+s2); //java....hello
method_1(s1,s2);
System.out.println(s1+"...."+s2); //java....hello
StringBuilder s11 = new StringBuilder("java");
StringBuilder s22 = new StringBuilder("hello");
method_2(s11,s22);
System.out.println(s11+"-----"+s22); //javahello-----hello
}
public static void method_1(String s1,String s2){
s1.replace('a','k');//创建了字符串对象,但没有引用。
s1 = s2;//同主函数的道理是一样的,为什么输出的s1还是Java?
}
public static void method_2(StringBuilder s1,StringBuilder s2){
s1.append(s2);
s1 = s2;
}
}
|