java中List集合使用泛型与不使用泛型有什么区别?例如:List lists=new ArrayList();和List<String> lists=new ArrayList<String>();他们两者有什么样区别?
2 回答
白猪掌柜的
TA贡献1893条经验 获得超10个赞
泛型其实还有一个通俗的名字:参数化类型(使用参数指明了该传什么类型)。就是明确指定了运行期集合中对象的类型。如果没有泛型,那我一切的对象直接使用Object和强制类型转换就解决了不是吗?但是这种有个问题,就是会在运行期出现随处可见的强制类型转换异常ClassCastException。而指定了参数化类型,是不是我们在编译期就进行检查了,传入List<String>类型,List里面只能放入String,你add其他类型编译不会通过的,就不要提运行期检查了。。。所以你提泛型搞不懂就理解为参数化类型这个事就完事了
添加回答
举报
0/150
提交
取消