1
.array型別的變數在宣告的同時必須進行例項化(至少得初始化陣列的大小),而arraylist可以只是先宣告。
2.array只能儲存同構的物件,而arraylist可以儲存異構的物件。
同構的物件是指型別相同的物件,若宣告為int的陣列就只能存放整形資料,
string
只能存放字元型資料,但宣告為object的陣列除外。
而arraylist可以存放任何不同型別的資料(因為它裡面存放的都是被裝箱了的object型物件,實際上arraylist內部就是使用
"object_items;
"這樣乙個私有欄位來封裝物件的)
3在clr託管對中的存放方式
array是始終是連續存放的,而arraylist的存放不一定連續。
4初始化大小
array物件的初始化必須只定指定大小,且建立後的陣列大小是固定的,
而arraylist的大小可以動態指定,其大小可以在初始化時指定,也可以不指定,也就是說該物件的空間可以任意增加。
5array不能夠隨意新增和刪除其中的項,而arraylist可以在任意位置插入和刪除項。
array和arraylist的相似點
1都具有索引(index),即可以通過index來直接獲取和修改任意項。
2他們所建立的物件都放在託管堆中。
3都能夠對自身進行列舉(因為都實現了ienumerable介面)。
arraylist的一些特性
arraylist的capacity屬性值會隨arraylist中的項的實際大小來發生改變
通過arraylist類的trimtoresize()方法可以將arraylist例項中的空項去除以壓縮體積。
在c#2.0中,建議大家盡量使用范型版的arraylist,即system.collection.generics命名空間下的list,
這樣不但保證了型別安全,而且由於沒有了裝箱和拆箱的過程,從而提高了物件處理的效率。
Array 和 ArrayList 的區別
array 即陣列,宣告方式可以如下 int array new int 3 int array new int 3 int array int array new int 定義乙個 array 時,必須指定陣列的資料型別及陣列長度,即陣列中存放的元素個數固定並且型別相同。arraylist 是動態...
Array和ArrayList的區別
araay可以包含基本型別和物件型別,arraylist只能包含物件型別 array的大小是固定的,arraylist的大小是動態的 arraylist可以算是array的加強版 提供了新的功能 新增全部 addall 刪除全部 removeall 返回迭代器 iteratorall 使用場景 如果...
Array和ArrayList的區別
array和arraylist的區別 1.array型別的變數在宣告的同時必須進行例項化 至少得初始化陣列的大小 而arraylist可以只是先宣告。2.array只能儲存同構的物件,而arraylist可以儲存異構的物件。同構的物件是指型別相同的物件,若宣告為int的陣列就只能存放整形資料,str...