为什么要使用Java 泛型,看下列代码:
public class GenericTst {
/**
* @param args
*/
public static void main(String[] args) {
List list = new ArrayList();
list.add("qqyumidi");
list.add("corn");
list.add(100);
for (int i = 0; i < list.size(); i++) {
String name = (String) list.get(i); // 1
System.out.println("name:" + name);
}
}
}
运行后控制台:
name:qqyumidi
name:corn
Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
at com.penn.test.http.EnumTst.main(EnumTst.java:24)
就是说我们可以将任何类型的数据放入list,但是当我们从list中取数据时,需要使用强制类型转换,这样很容易出现ClassCastException,使用泛型就不会出现这样的问题。