ArrayList list=new ArrayList();
list.add(0,new Integer(42));
int total=((Integer)list.get(0)).intValue();
这例最后一行用于转型,将集合中的元素转换为Integer类型就是泛型类别想解决的问题。
下面是用泛型改定的上面的代码。
ArrayList<Integer> list=new ArrayList<Integer>();
list.add(0,new Integer(42));
int total=list.get(0).intValue();
这些泛型化的集合API强制在编译的时候用<>来指定集合中存储的数据类型。用了泛型以后就不再需要转型了,而且在这个例子中如果试图添加一个String类型的变量到这个声明为Integer的集合中去将会导致一个编译错误。