作者jaw109 ()
看板java
标题[问题] Vector的get() 方法吐出来的东西是clone吗?
时间Thu Mar 17 21:39:35 2011
Vector <NameCard> v = new Vector <NameCard>();
读一堆东西(v); // 此时v里面有一串NameCard
可是此时当我这麽做...
NameCard nc = v.get(20);
nc.name = "小笨瓜";
v里面第20笔资料的name并没有跟着更新.....(我希望是"有")
我认为Vector.get()这个method传回来的东西是个clone
所以我在NameCard里面override了clone()这个method
直接return this;
class NameCard
{
public String name;
public age;
public NameCard clone()
{
return this;
// return super.clone();
}
}
结果也没有用, 我在clone()里让他吐出一些讯息
结果发现在使用Vector.get()时也没看到这个讯息
也就是说*get()不会触发clone()* (这样正常吗??)
[我的问题是...]
如果希望那第20笔资料会跟着更新
我应该可以怎麽做呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 60.250.140.195
1F:推 slalala:写方法 带set get 03/17 21:41
※ 编辑: jaw109 来自: 60.250.140.195 (03/17 21:46)
2F:推 slalala:等等 你前面// 此时v里面有一串NameCard<==PO一下 03/17 21:49
3F:→ jaw109:其实也就是一连串的v.add(new NameCard()); 而已 03/17 22:13
等等, 请先不要处理, 我的问题其实是在android上面
我刚刚写了一个纯java程式, 发现其实Vector.get()的确是传回reference.....
我试着在android上面把问题重制出来, 等我真的重制出来再说吧....
※ 编辑: jaw109 来自: 123.194.132.204 (03/17 22:14)
4F:→ jaw109:btw, slalala, 谢谢你的帮忙罗 03/17 22:15
5F:推 slalala:如果是Andorid 这真的很有趣 03/17 23:14
6F:推 a1234957:API是GOOGLE重写过的XD 03/18 04:53