泛型概念和使用泛型的好处
泛型概念
泛型:是一种未知的数据类型当我们不知道使用什么数据类型的时候,可以使用泛型
泛型也可以看出是一个变量,用来接收数据类型
E e:Element 元素
T t:Type 类型
ArrayList集合在定义的时候,不知道集合中都会存储什么类型的数据,所以类型使用泛型
E:未知的数据类型
创建集合对象的时候,就会确定泛型的数据类型
ArrayList<Integer> arrayList = new ArrayList<>();
使用泛型的好处
创建集合对象,不使用泛型
好处:
集合不使用泛型,默认为Object类型,可以存储任意类型的数据
弊端:
不安全,会引发异常
public static void main(String[] args) {
ArrayList list = new ArrayList();
list.add("abc");
list.add(1);
Iterator iterator = list.iterator();
while (iterator.hasNext()){
Object next = iterator.next();
System.out.println(next);
String s = (String) next;
System.out.println(s.length());
}
}
集合中存储的Integet类型的值不嫩转换为String类型,所以会报异常

创建集合,使用泛型
好处:
1.避免了类型转换的麻烦,存储的是什么类型,取出的就是什么类型
2.把运行期异常(代码运行之后会抛出的异常),提升到了编译期(写代码的时候会报错)
弊端:
泛型是什么类型,只能存储什么类型的对象
public static void main(String[] args) { ArrayList<String> list = new ArrayList<>(); list.add("sdsds"); list.add("dsadsada"); Iterator<String> iterator = list.iterator(); while (iterator.hasNext()){ String next = iterator.next(); System.out.println(next); System.out.println(next.length()); } }
运行结果:


浙公网安备 33010602011771号