Re: [問題] 如何用C#寫一個動態陣列?

看板C_Sharp (C#)作者 (我要拿Ph.D.!!!)時間18年前 (2007/03/21 07:43), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串4/13 (看更多)
※ 引述《rahim (forget it)》之銘言: : ※ 引述《Eric30 (eric)》之銘言: : : ArrayList可以查查MSDN,有很多資料。 :) : : ArrayList可以用來裝任意物件 & 值 : : 舉例來說 假設你想加入三個int : : : int integer1 = 1; : : int integer2 = 2; : : int integer3 = 3; : : ArrayList arr = new ArrayList(); : : arr.Add(integer1); : : arr.Add(integer2); : : arr.Add(integer3); : 那在存值進arr中的時候,可以不用add()嗎? : 例如我用arr[0]=integer1; : arr[1]=integer2; : arr[2]=integer3; 當然可以 不過你要先確定你的arr.length是多少 arr[i]的i超過arr.length的話會有error 基本上 arraylist是會自己長大的一種資料結構 你在add的過程要是超過了原本的長度 他就會自己"延伸"額外的長度出來 : 這樣可以嗎? : 還有 ArrayList在本質上是一個類別嗎? 單欄~~ 不然宣告的時候那個 new 是寫辛酸的嗎 XD : 先謝謝你的意見喔 : 不過我看了一下MSDN : 關於ArrayList 是不是只能做到一維動態陣列呢? : 如果我今天想要一個二維陣列 : 那用ArrayList有沒有辦法做到呢? : 或是在C#中有沒有其他的東西能做到二維動態陣列的功能呢? 當然有辦法囉 這種linked list的變形是很基本的資料結構 用C#來implement這些資料結構或是演算法是相當輕鬆的事情(挺) ArrayList FirstD = new ArrayList(); ArrayList SecondD; for(int i = 0 ; i < 50 ; i ++) { FirstD.Add( new ArrayList() ); } 這樣就是一個用ArrayList組成的二維動態陣列了 你高興的話 你還可以用他來作tree -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.133.110.47 ※ 編輯: GreatShot 來自: 220.133.110.47 (03/21 07:49)

03/21 09:04, , 1F
用泛型來作也可以, List<MyClass> myList;
03/21 09:04, 1F
文章代碼(AID): #16076yc6 (C_Sharp)
討論串 (同標題文章)
文章代碼(AID): #16076yc6 (C_Sharp)