Java方法的参数传递

首先明确一点:Java是传值的。
    如果参数是基本类型(包括String,也被认为是基本类型),参数值将会被copy一份,然后将copy的那份传到方法中,这样保证了在方法中修改参数值时,不会修改原来的那份。
    如果参数是对象,那么copy的就是该对象的引用值,方法不可以改变这个引用值,但是可以改变对象的属性。
拿个小例子测试一下:

 1 import java.util.List;
 2 import
 java.util.ArrayList;
 3 import
 java.lang.StringBuffer;
 4 

 5 public class Test {
 6 
    
 7     public static void
 main(String args[]) {
 8         List aList = new
 ArrayList();
 9         String str = "Hello,"
;
10         StringBuffer sb = new StringBuffer().append("Hello,"
);
11 

12         aList.add(str);
13 
        aList.add(sb);
14 

15         System.out.println(aList.get(0));
16         System.out.println(aList.get(1
));
17 

18         str = "World!";
19         sb.append("World!"
);
20 

21         System.out.println(aList.get(0));
22         System.out.println(aList.get(1
));
23 
    }
24 }

输出结果为:

posted on 2010-08-26 14:07 Aries001 阅读(98) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航:
 

导航

<2010年8月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
2930311234

统计

常用链接

留言簿

随笔档案

搜索

最新评论