泛型
1.泛型概述【理解】
-
泛型的介绍
泛型是JDK5中引入的特性,它提供了编译时类型安全检测机制
-
泛型的好处
- 把运行时期的问题提前到了编译期间
- 避免了强制类型转换
-
泛型的定义格式
- <类型>: 指定一种类型的格式.尖括号里面可以任意书写,一般只写一个字母.例如:
- <类型1,类型2…>: 指定多种类型的格式,多种类型之间用逗号隔开.例如: <E,T> <K,V>
2.接下来通过代码体现一下泛型的好处
public class Mytest3 {
public static void main(String[] args) {
ArrayList<Student> list = new ArrayList<Student>();
list.add(new Student("小明", 20));
list.add(new Student("小丽", 20));
list.add(new Student("小亮", 20));
// 迭代器:Iterator<Student> iterator = list.iterator();
// while (iterator.hasNext()){
// Student student = iterator.next();
// System.out.println(student.getName() + "$$$" + student.getAge());
// }
// 列表迭代器:
// ListIterator<Student> listIterator = list.listIterator();
// while (listIterator.hasNext()) {
// Student student = listIterator.next();
// System.out.println(student.getName() + "$$$" + student.getAge());
// }
// size()与get(): for (int i = 0; i < list.size(); i++) {
// Student student = list.get(i);
// System.out.println(student.getName() + "----" + student.getAge());
// }增强for遍历元素:
for (Student student : list) {
System.out.println(student.getName() + "----" + student.getAge());
}
}
}
class Student{
private String name;
private int age;
public Student() {
}
public Student(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}