Array與ArrayList的區別

2021-10-04 12:50:07 字數 810 閱讀 8702

1.array型別的變數在宣告的同時必須進行例項化(至少得初始化陣列的大小),而arraylist可以只是先宣告。

2. array只能儲存同構的物件,而arraylist可以儲存異構的物件。

同構的物件是指型別相同的物件,若宣告為int的陣列就只能存放整形資料,string只能存放字元型資料,但宣告為object的陣列除外。

而arraylist可以存放任何不同型別的資料(因為它裡面存放的都是被裝箱了的object型物件,實際上arraylist內部就是使用"object _items;"這樣乙個私有欄位來封裝物件的)

3 在clr託管對中的存放方式

array是始終是連續存放的,而arraylist的存放不一定連續。

4 初始化大小

array物件的初始化必須只定指定大小,且建立後的陣列大小是固定的,

而arraylist的大小可以動態指定,其大小可以在初始化時指定,也可以不指定,也就是說該物件的空間可以任意增加。

5 array不能夠隨意新增和刪除其中的項,而arraylist可以在任意位置插入和刪除項。

array和arraylist的相似點

1 都具有索引(index),即可以通過index來直接獲取和修改任意項。

2 他們所建立的物件都放在託管堆中。

3 都能夠對自身進行列舉(因為都實現了ienumerable介面)。

arraylist的一些特性

arraylist的capacity屬性值會隨arraylist中的項的實際大小來發生改變

通過arraylist類的trimtoresize()方法可以將arraylist例項中的空項去除以壓縮體積。

C 中Array與ArrayList的區別

c 中經常用到的集合類array與arraylist是許多剛接觸c 語言的人比較困惑的。這兩個物件是比較有用的,而且是在很多地方適用的。這裡我把自己對array與arraylist物件的區別總結一下,與大家分享。主要區別 一 array的用法與陣列幾乎一樣,可以看做是陣列。在定義的時候需要指定長度 ...

C 中ArrayList與Array的區別

c array陣列的用法範例 type typename new type size 如int a new int 2 string str new string 5 實事上我們平常是用int,string.的,此時我們已經建立乙個array陣列,只不過我們平常沒有這種意識而已.1 type資料型別...

c 中Array與ArrayList的區別

針對任意型別,固定長度 通過儲存 object 實現任意型別的,所以使用時要轉換。在c 中的陣列也是物件,實際上就是array類的例項 是乙個抽象類 在clr託管對中的存放方式始終是連續存放的 初始化必須只定指定大小,且建立後的陣列大小是固定的 不能夠隨意新增和刪除其中的項 針對任意型別 任意長度的...