我有以下代码的java传值例如帮我明白
class sample
{
public void update(List l)
{
l = null;
}
public static void main (String[] args)
{
List m = new ArrayList();
m.add("suresh");
m.add("sankar");
new sample().update(m);
System.out.println(m);
}
}
答案将是{[“苏雷什,”桑卡尔“]}。该m
是一个指针数组列表对象时,它包含一个内存地址值(对于前者考虑为0xf34),当我们传递m来更新方法时,局部变量l将被设置为0xf34,指向内存中的数组列表对象。当我们将null设置为这个变量l时,内存地址将替换因为变量m也应该指null.am我right.please帮助。
谢谢大家的宝贵意见。 – 2010-08-17 16:03:38