黑马程序员技术交流社区

标题: StringBuffer的打印问题 [打印本页]

作者: 黑马伍仪华    时间: 2012-3-5 15:04
标题: StringBuffer的打印问题
.


StringBuffer 打印问题






Java代码  
1.public class Test {  
2.      
3.    public static void main(String[] args){  
4.         
5.         
6.    StringBuffer a = new StringBuffer("adc");  
7.    StringBuffer b = new StringBuffer("efg");  
8.      
9.    Test test = new Test();  
10.    test.change(a, b);  
11.    System.out.println(a);  
12.    System.out.println(b);  
13.      
14.      
15.    }  
16.      
17.      
18.    public void change(StringBuffer a ,StringBuffer b){  
19.         
20.         
21.        a.append(b);  
22.        b = a;  
23.         
24.    }  
25.  
26.}  





Java代码  
1.System.out.println(a);  
2.System.out.println(b);  

上面的输出结果为什么是:abcefg和efg 而不是 abcefg 和 abcefg?


作者: 陈建凡    时间: 2012-3-5 15:15
a.append(b);     将指定的字符串追加到此字符序列。所以a的字符串 就是abcefg

b的值 未改变,因为值传递的特点是 单向的,对形参的改变不影响实参的数据的改变。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2