<>:相当于标签
JDK1.5以后开始使用泛型,集合中使用泛型。泛型实际就是 一个<>引起来的 参数类型,这个参数类型 具体在使用的时候才会确定具体的类型。
示例:
如果不使用泛型的话,有缺点:
一般我们在使用的时候基本上往集合中存入的都是相同类型的数据--》便于管理,所以现在什么引用数据类型都可以存入集合,不方便!
ArrayList al = new ArrayList();
al.add(62);
al.add(90);
al.add(87);
al.add(92);
al.add("大米");
//对集合遍历查看:
for(Object obj:al){
System.out.println(obj);
}
使用泛型后:
//没使用泛型用这种方式遍历,会报错
for(Integer i:al){
System.out.println(i);
}
加入泛型的优点:
- 在编译时期就会对类型进行检查,不是泛型对应的类型就不可以添加入这个集合。
- 对集合遍历查看可以直接用泛型参数类型接受
- 使用泛型你可能觉得麻烦,实际使用了泛型才会简单,后续的遍历等操作简单。
注意:
- 泛型的类型:都是引用数据类型,不能是基本数据类型。
- ArrayList<Integer> al = new ArrayList<Integer>();在JDK1.7以后可以写为:ArrayList<Integer> al = new ArrayList<>(); 其中,<> ---钻石运算符