c 中list容器學習

2021-07-13 18:15:10 字數 1674 閱讀 3807

c# list用法

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

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

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

一、  list的基礎、常用方法:

1、listmlist = new list();   

a.t為列表中元素型別,現在以string型別作為例子

如:  listmlist = new list();

b.增加元素:list. add(t item)    新增乙個元素

如:mlist.add("賴炎濱");

c.插入元素:insert(int index, t item);    在index位置新增乙個元素

如:mlist.insert(1, "laiyanbin");

d.刪除元素:  list. remove(t item)       刪除乙個值

如:mlist.remove("賴炎濱");

list. removeat(int index);   刪除下標為index的元素

如.:mlist.removeat(0);

list. removerange(int index, int count);   從下標index開始,刪除count個元素

如.:mlist.removerange(3, 2); //超出刪除的範圍會出錯

注:刪除某元素後,其後面的元素下標自動跟進

e.判斷是否存在list:list. contains(t item)   得到的結果是返回true或false

f.排序:list. sort ()   //預設是元素第乙個字母按公升序

給list裡面元素順序反**

list. reverse ()   //可以與list. sort ()配合使用,達到想要的效果

遍歷list中元素:  

foreach (t element in mlist)  t的型別與mlist宣告時一樣

g.list清空:list. clear ()

如:mlist.clear();

h.獲得list中元素數目:

list. count ()    返回int值

i.新增陣列進list:string temarr = ;

mlist.addrange(temarr);

2、listtestlist =new list(ienumerablecollection);

以乙個集合作為引數建立list

e.g.: string temarr = ;

listtestlist = new list(temarr);

3、list與陣列的相互轉換

1.從string轉list

例如:string str=;

list list=new list(str);

2.從list轉string

例如:listlist=new list;

string str=list.toarray();

//viewstate["idlist"]轉換成list<>

listidlist=(list)viewstate["idlist"]

C 學習筆記 List容器

1.雙向鍊錶容器 2.不能隨機存放元素,不支援at.pos 函式與 操作符,可以it 但不能it n include using namespace std include void main cout l.size endl list iterator it l.begin while it l....

c 容器(list學習總結)

list是乙個線性雙向鍊錶結構,它的資料由若干個節點構成,每乙個節點都包括乙個資訊塊 即實際儲存的資料 乙個前驅指標和乙個後驅指標。它無需分配指定的記憶體大小且可以任意伸縮,這是因為它儲存在非連續的記憶體空間中,並且由指標將有序的元素鏈結起來。由於其結構的原因,list 隨機檢索的效能非常的不好,因...

C 容器list排列

list容器網上資料講的相對其他容器vector等要少很多,這裡對list容器的排序簡單說一下。框架 include include using namespace std int main return 0 使用push back 新增元素。假定要輸入的資料為 3 1 5 4 2sort 公升序排...