C# List 泛型

一、簡介

所屬命名空間:System.Collections.Generichtml

List<T>類是 ArrayList 類的泛型等效類。該類使用大小可按需動態增長的數組實現 IList<T> 泛型接口。c#

泛型的好處: 它爲使用c#語言編寫面向對象程序增長了極大的效力和靈活性。不會強行對值類型進行裝箱和拆箱,或對引用類型進行,向下強制類型轉換,因此性能獲得提升。數組

性能注意事項: List[T]兩點優點安全

(1)在決定使用IList<T> 仍是使用ArrayList類(二者具備相似的功能)時,記住IList<T> 類在大多數狀況下執行得更好而且是類型安全的。性能

(2)若是對IList<T> 類的類型 T 使用引用類型,則兩個類的行爲是徹底相同的。可是,若是對類型 T 使用值類型,則須要考慮實現和裝箱問題。spa

添加到ArrayList 中的任何引用或值類型都將隱式地向上強制轉換爲Object。若是項是值類型,則必須在將其添加到列表中時進行裝箱操做,在檢索時進行取消裝箱操做。強制轉換以及裝箱和取消裝箱操做都會下降性能;在必須對大型集合進行循環訪問的狀況下,裝箱和取消裝箱的影響很是明顯。---微軟code

二、聲明

//T爲列表中元素類型
List<T> List = new List<T>();

//當T爲string時,舉例:
string[] nameArr = { "Ha", "Hunter", "Tom", "Lily", "Jay", "Jim", "Kuku", "Locu" };

List<string> list = new List<string>(nameArr);

三、添加

//添加一個元素
list. Add("lucy");
//添加一組元素
string[] temArr = { "Ha","Hunter", "Tom", "Lily", "Jay", "Jim", "Kuku",  "Locu" };
list.AddRange(temArr);
//插入元素 list.Insert(1, "Hei");

四、遍歷元素(foreach)

foreach (string name in list)
{
    Console.WriteLine(name);
}

五、刪除、清空元素

//刪除一個值
list.Remove("Hunter");
//刪除下標爲index的元素
list.RemoveAt(0);
//從下標3開始,刪除2個元素
list.RemoveRange(3, 2);
//清空元素
list.Clear();

六、Contains(是否包含某個元素)

bool blog = list.Contains("Hunter");

七、排序Sort,倒序Reverse

//默認是元素第一個字母按升序
list.Sort();
//將List裏面元素順序反轉
list.Reverse();
//從第二個元素開始,反轉4個元素
//結果list裏最後的順序變成"Ha", "Jay", "Lily", "Tom", "Hunter", "Jim", "Kuku",  "Locu"

list.Reverse(1,4);

 

http://www.cnblogs.com/lgx5/p/6271098.htmlhtm

相關文章
相關標籤/搜索