1、泛型的作用:
- 用了泛型之后:
List<E> list = new ArrayList<>();
E e = list.get(0);
- 不用泛型:
List list = new ArrayList();
Object o = list.get(0);
E e = (E)o;
看完上面我想你已经看出了一下几点:
- 用了泛型仅仅确定了集合内元素的类型,但是却在编译时就确定了元素的类型,这是再取出元素时不需要在强制转换了。
这样做简化了代码,增强了代码的可读性等等,当然如果看过我之前总结的,使用泛型可以不适用容错处理和向下转型了。
2. 不使用泛型的话,在集合中取出元素会是<E>类型,也就会默认为Object类型,失去了存入时的类型,如果再用的话往往会进行强转,效率低下,会有产生错误的可能性。