C 筆記 List 泛型

2021-09-26 19:24:25 字數 1650 閱讀 8867

所屬命名空間:system.collections.generic

list類是 arraylist 類的泛型等效類。該類使用大小可按需動態增加的陣列實現 ilist 泛型介面。

泛型的好處: 它為使用c#語言編寫物件導向程式增加了極大的效力和靈活性。不會強行對值型別進行裝箱和拆箱,或對引用型別進行,向下強制型別轉換,所以效能得到提高。

效能注意事項:list[t]兩點優勢

(1)在決定使用ilist 還是使用arraylist類(兩者具有類似的功能)時,記住ilist 類在大多數情況下執行得更好並且是型別安全的。

(2)如果對ilist 類的型別 t 使用引用型別,則兩個類的行為是完全相同的。但是,如果對型別 t 使用值型別,則需要考慮實現和裝箱問題。

新增到arraylist 中的任何引用或值型別都將隱式地向上強制轉換為object。如果項是值型別,則必須在將其新增到列表中時進行裝箱操作,在檢索時進行取消裝箱操作。強制轉換以及裝箱和取消裝箱操作都會降低效能;在必須對大型集合進行迴圈訪問的情況下,裝箱和取消裝箱的影響非常明顯。

//t為列表中元素型別

list list = new list()

;//當t為string時,舉例:

string[

] namearr =

;list list = new list

(namearr)

;

//新增乙個元素

list.

add(

"lucy");

//新增一組元素

string[

] temarr =

;list.

addrange

(temarr)

;//插入元素

list.

insert(1

,"hei"

);

foreach (string name in list)

//刪除乙個值

list.

remove

("hunter");

//刪除下標為index的元素

list.

removeat(0

);//從下標3開始,刪除2個元素

list.

removerange(3

,2);

//清空元素

list.

clear()

;

bool blog = list.

contains

("hunter"

);

//預設是元素第乙個字母按公升序

list.

sort()

;//將list裡面元素順序反轉

list.

reverse()

;//從第二個元素開始,反轉4個元素

//結果list裡最後的順序變成"ha", "jay", "lily", "tom", "hunter", "jim", "kuku", "locu"

list.

reverse(1

,4);

參考:

C 泛型 使用泛型List

一 泛型的優點 效能高。從前面的例子可以看出使用不需進行型別轉換,可以避免裝箱和拆箱操作,提高效能。型別安全。泛型集合對其儲存物件進行了型別約束,不是定義時宣告的型別,是無法儲存到泛型集合中的,保證了資料型別的安全。重用。使用泛型型別可以最大限度地重用 保護型別的安全以及提高效能。使用泛型 使用泛型...

C 泛型 使用泛型List

一 泛型的優點 效能高。從前面的例子可以看出使用不需進行型別轉換,可以避免裝箱和拆箱操作,提高效能。型別安全。泛型集合對其儲存物件進行了型別約束,不是定義時宣告的型別,是無法儲存到泛型集合中的,保證了資料型別的安全。重用。使用泛型型別可以最大限度地重用 保護型別的安全以及提高效能。使用泛型 使用泛型...

C 泛型List用法

一 c 泛型list 用法 1.作用 用於解決一系列類似的問題。二 list的方法和屬性 方法或屬性 作用 capacity 用於獲取或設定list可容納元素的數量。當數量超過容量時,這個值會自動增長。您可以設定這個值以減少容量,也可以呼叫trin 方法來減少容量以適合實際的元素數目。count 屬...