使用泛型很好的避免了因类型转换而产生的ClassCastException。让程序有更好的可读性和安全性。
用ArrayList举例子
ArrayList<String> arrayList = new ArrayList<String>();
1、代码有更好的可读性,一看就知道数组中包含的是String类型的对象。
2、当get调用的时候,不需要类型转换,编译器就能返回值是String类型的对象,而不是Object。
3、当add调用的时候,编译器还会检查,避免插入错误类型的对象,避免了运行时强制类型转换异常的出现。