看板 java 關於我們 聯絡資訊
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
slalala:寫方法 帶set get 03/17 21:41
※ 編輯: jaw109 來自: 60.250.140.195 (03/17 21:46)
slalala:等等 你前面// 此時v裡面有一串NameCard<==PO一下 03/17 21:49
jaw109:其實也就是一連串的v.add(new NameCard()); 而已 03/17 22:13
等等, 請先不要處理, 我的問題其實是在android上面 我剛剛寫了一個純java程式, 發現其實Vector.get()的確是傳回reference..... 我試著在android上面把問題重製出來, 等我真的重製出來再說吧.... ※ 編輯: jaw109 來自: 123.194.132.204 (03/17 22:14)
jaw109:btw, slalala, 謝謝你的幫忙囉 03/17 22:15
slalala:如果是Andorid 這真的很有趣 03/17 23:14
a1234957:API是GOOGLE重寫過的XD 03/18 04:53