目录
一、類泛型
定義一個類的泛型就是指定義一個類,這個類中某些字段類型是不確定的,這些類型可以在類構造的時候定下來。
創建一個類處理int和double類型的相加
/*泛型类*/
class Test<T>
{
private T a;
private T b;
public Test(T a, T b)
{
this.a = a;
this.b = b;
}
public T GetSum()
{
dynamic num1 = a;
dynamic num2 = b;
return (T)num1 + num2;
}
}
上面代碼中的T,類似於變量的命名,這個是我嗎可以定義的類型,通過new這個類的時候定義類型
Test<int> t1=new Test<int>(1,2);//返回3
Test<double> t2=new Test<double>(1.2,1.2);//返回2.4
在我們new的時候給這個類定義類型
二、泛型方法
泛型方法與泛型類的寫法幾乎一致

和类泛型类似
三、泛型列表
泛型就是對數據封裝規定數據類型的一種稱呼。
列表泛型
List<int> list = new List<int>();
這樣就創建了一個int類型的列表集合,但目前他是空的集合
/*列表*/
List<int> list = new List<int>() { 22,33,44};
List<int> list = new List<int>() { 22, 33, 44 };
list.Add(99);
list[0] = 11;
for(int i = 0; i < list.Count; i++)
{
Console.WriteLine(list[i]);
}
列表支持數組方式的寫法讀取和賦值。
列表?列表內部數據是使用數組進行儲存的,一個空的列表內部會有一個長度為0的數組,當給列表中添加元素時,列表的容量會扩大為4,添加到第五個時為8,如果添加到第9時扩大為16,以此類推。
列表tis:當列表中的容量發生改變時,他會創建一個新的數組。使用array.Copy()方法將元素複製到一個新數組中,為了節省時間,如果事先知道要存儲數據的個數,就可以利用初始化函數來指定列表的大小,如:
List<int> list=new List<int>(10);//當容量不夠時按兩倍進行扩大
我們可以通過list.Capacity屬性來獲取和設置容量
list.Capacity=10;
總結:泛型就是指某些數據的多種類型的集合,為該類型定制一個清晰統一是數據類型,定制完畢必須安裝類型規則存入。
四、总结
定義類泛型,當我們代碼本身無需太大改動只需改變類型時,這樣可以減少代碼的重複性,並且數據更規範安全。