泛型的一个主要优点是性能:
在把值类型转换为引用类型和把引用类型转换为值类型时,需要进行装箱和拆箱操作。
var list=new ArrayList();
list.Add(44);//装箱
int i=(int)list[0];//拆箱
装箱和拆箱操作很容易使用,但性能损失。
System.Collections.Generic 名称空间中的List<T>不使用对象,而是使用时定义
var list=new List<int>();
list.Add(44);//没有装箱
int i=list[0];//没有拆箱
类型安全 :
接着上面的List<int>
list.Add("myString"); //编译时错误