泛型是 通过参数化类型来实现在同一份代码上操作多种数据类型 的 技术。
利用“参数化类型”将类型抽象化,从而实现灵活的复用。
泛型的优点:
1. 泛型增强了代码的可读性
2. 泛型有助于实现代码的重用、保护类型的安全以及提高性能。
3. 我们可以创建泛型集合类。
4. 泛型实现了类型和方法的参数化
5. 我们还可以对泛型类进行约束以访问特定数据类型的方法。
6. 关于泛型数据类型中使用的类型的信息可在运行时通过使用反射获取。
7.1、减少装箱和拆箱,提高运行效率
List<int> list = new List<int>();
泛型约束
结构:类型参数必须是值类型 struct
类:必须是引用类型,包括类,接口 委托 Class
new: 类型 参数必须具有无参数的公共构造函数
List<T> 对应ArrayList集合类SortedList
<TKey, TValue> 对应SortedList集合类
Queue<T> 先进先出的集合类
Stack<T> 后进先出的集合类
Collection<T> 自定义泛型集合的基类