泛型
1、位于System.Collections.Generic命名空间中。
2、类:
Dictionary<TKey,TValue> 名/值对
List<T> 动态改变大小的顺序列表
LinkedList<T> 双向链表
Quene<T> 先入先出(FIFO)
SortedDictionary<TKey,TValue> 排序的名称/值对集合
SortedSet<T> 排序不重复对象集合
Stack<T> 先入后出(LIFO)
3、集合初始化语法(只能对支持Add()方法的类使用)
List<int> intList= new List<int> {0,1,2,3};
4、创建自定义泛型方法
static void Swap<T> (ref T a, ref T b) { T temp; temp=a; a=b; b=temp; }
使用泛型方法
int a=10, b=20; Swap<int> (ref a ,ref b);
类型推断 (虽,但仍建议养成显式指定类型参数的习惯)
int a=10, b=20; Swap (ref a ,ref b); //省去了<int>
5、泛型代码中的default关键字
除在switch中有,设置泛型中不确定类型默认值很有意义
//和泛型一起使用时,表示一个类型参数的默认值 public void RestValue() { X=default(T); Y=default(T); }
6、泛型基类
派生类指定类型参数、派生类也是泛型时可重用类型占位符(可选的)
7、类型参数约束(where)
浙公网安备 33010602011771号