Vector动态二维数组的疑问

如下代码:
Vector v=new Vector();
Vector vv = new Vector();
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
v.addElement("a");
}
vv.addElement(v);
}
system.out.println(vv.toString());

我以为打印出的语句为:
[[a,a],[a,a,a,a]]
可是却打印出:
[[a,a,a,a],[a,a,a,a]]
帮忙解决一下,先谢谢了!

2个回答

你两次加的都是v,而且在循环里没有new,所以两次是一样的

就像你有一个qq,加了2个好友,然后你把qq给你女朋友,她又加了2个好友,最后你登上去和他等上去,看到都是4个好友,因为你没有多申请一个qq

w只是v的一层壳,不能阻止v的内容变化

开始的时候,你没new,虽然加了2次,其实是同一个东西

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问