問題
// 大概的意思就是:要新增 3 個 book 物件到 vec(向量 vector)中去,但是只想建立乙個 book 物件;
// 給 b 賦一次值,向 vec 中新增一次。
book b =
newbook()
;for
(i=0
;i<
3;i++
)
解決
vector 原理
新增元素:當我們使用 add(object o) 方法向 vector 中新增元素時,只是將 object o 的位址傳給了 vector ,也就是說,vector的記憶體空間中儲存的是物件的位址,並沒有特意開闢一塊新的空間,將傳入的物件複製進去。
解決方法
根據上面的原理,每次輸入資訊,都要有乙個新的物件來接收資訊,然後將新物件作為引數傳入到 vec.add() 中。
改正後的**:
book b=
newbook[3
];int i;
for(i=
0;i<
3;i++
)
或者:
book b;
for(i=
0;i<
3;i++
)
物件陣列的使用:
第一步: 定義方法:
第二步: 建立:
第三部:初始化:對基礎型別:
非基礎型別
比較陣列,vector物件和array物件
要了解陣列,vector物件及array物件的相似與不同之處,結合以下示例分析 include include include int main vectora2 4 a2 0 1.0 3.0 a2 1 1.0 5.0 a2 2 1.0 7.0 a2 3 1.0 9.0 arraya3 arraya...
Java中Vector的特性以及與陣列的區別
vector與陣列最大區別在於,陣列物件建立之後長度就不能改變了,而vector的儲存空間可擴充。但注意,vector儲存型別必須是引用型別。vector的宣告格式一般是 vector 型別 變數名,預設容量為10。不指明元素型別也可以,但編譯時會出現 使用了未經檢查或不安全的操作 警告。可以使用迭...
JAVA物件導向 物件陣列概念與舉例
物件陣列 就是由物件構成的陣列,類就是陣列的型別。定義方法 類名 陣列名 new 類名 n 使用方法 與普通陣列使用基本相同,不同的是,在物件陣列中,不僅僅陣列定義的時候需要new 而且在陣列成員類定義新增的時候也需要new出乙個物件。舉例 1 首先定義乙個學生類,在類中,定義了學生的姓名,年齡,成...