list泛型
假设以下类都已经导入了需要的包,
假设已经定义了一个课程类Course具有id,name两个属性与各方法。
//list泛型的添加
public class ListGeneric {
//带有泛型的Course的List类型
public List<Course> select;
public ListGeneric() {
this.select = new ArrayList<Course>();
}
//添加方法
public void addList() {
Course cr1 = new Course(1,"语文");
select.add(cr1);
//以下语句,不符合泛型规范
//select.add("字符串");
}
}
//list泛型的遍历
public class ListGeneric {
//带有泛型的Course的List类型
public List<Course> select;
public ListGeneric() {
this.select = new ArrayList<Course>();
}
//遍历方法
public void foreachList() {
for (Course cr:select) {
System.out.println(cr.id+":"+cr.name);
}
}
}
//list泛型不能使用基本类型
public class ListGeneric {
//带有泛型的Course的List类型
public List<Course> select;
public ListGeneric() {
this.select = new ArrayList<Course>();
}
//泛型不能使用基本类型
public void basicList() {
List<Integer> list = new ArrayList<Integer>();
list.add();
System.out.println("基本类型必须使用包装类作为泛型:"
+ list.get(0);
}
}