定義:List
作用:
泛型最常見的用途是泛型集合
我們在建立列表類別時,列表項目的資料型別可能是int,string或其它型別,如果對列表類別的處理方法相同,
就沒有必要事先指定資料類型,留待列表類別實例化時再指定。相當於把資料型別當成參數,這樣可以最
大限度地重複使用程式碼,保護類型的安全性以及提升效能。
List的一般用法
所屬命名空間: System.Collections.Generic
public class List
eg: string[] Arr = {"a","b","c"};
List
(2)增加一個元素List.Add(T item)
eg: mlist.Add("d");
(3)新增集合元素
eg: string[] Arr2 ={"f","g"."h"} ; mlist.AddRange(Arr2);
(4)在index位置上新增一個元素Insert(int index,T item)
)遍歷List中元素
foreach(T element in mlist) T的類型與mlist聲明時一樣
〴
eg:foreach(string s in mlist)
{ {
.WriteLine(s);
}
(6)刪除元素
List.Remove(T item)刪除元素
eg: mlist.RemoveAt(0);
List.RemoveRange(int index,int count);〠下標);
(7)判斷某個元素是否在該List中
List.Contains(T item) Console.WriteLine("g存在清單中");
else
(9)給List裡面元素順序反轉List.Reverse() 可以與List.Sort()配合使用
(10)ListList.Clear()清空
eg: mlist.count();
5
(1)List.FindAll方法:檢索所有與指定謂詞所定義的條件相符的元素class program
{
student stu = new student();
List
;
foreach(student s in students.FindAll(new Predicate
public class student
{
public string Name{get;set;}
{
return string.Format("姓名:{0}",Name);
}
}
public class FindName
private string _name;
public bool IsName(student s)
{ return (s.Name==_name) ?true:false;}
}
被逐個傳遞給Predicate委託,並在List中間前移動,從第一個元素開始,到最後一個元素結束,當找到匹配項
時處理停止
第一種方法委託給拉姆達表達式:
return true;
return false; eg: public bool ListFind(string name)
{
> 3)
{
return false;
}
) 的兩種方法。 Predicate
IEnumerable
return true;
{
}
); {
Console.WriteLine("element in subList: "+s);
subList儲存的就是所有長度大於3的元素
(7)List.RemoveAll方法:移除所有與指定的謂詞所定義的條件相符的元素。
public int RemoveAll(Predicate
E.g.:
mList.RemoveAll(name =>
{
if (name.Length > 3)
{
return true;
}
else
{
return false;
}
});
foreach (string s in mList)
{
Console.WriteLine("element in mList: " + s);
}
這時mList儲存的就是移除長度大於3之後的元素。
更多c# 泛型List的定義、作用、用法相關文章請關注PHP中文網!