package Collection;
import java.util.ArrayList;
import java.util.List;
public class TextGeneric {
//带有泛型————Course,的List类型属性
public List<Course> courses ;
private Object cr;
public TextGeneric() {
this.courses = new ArrayList<Course>() ;//实例化
}
//添加测试
public void textAdd() {
Course cr1 = new Course("1","大学语文");
courses.add(cr1);
//泛型集合中不能规定泛型规定的类型以外的对象
//courses.add("能否 添加奇怪的东西呢??????");
Course cr2 = new Course("2","c语言啊");
courses.add(cr2);
}
//测试循环遍历
public void textForeach() {
//规定了泛型,直接用Course类型
for(Course cr : courses);
System.out.println(cr.id+":"+cr.name);
}
public static void main(String[] args) {
TextGeneric ic = new TextGeneric();
ic.textAdd();
ic.textForeach();
}
}
特别简单 你把后面的分号 删除了 放上大括号for(Course cr : course){ System.out.println(); }
这里的cr是在当前for each 语句临时设置的变量,语句结束了就自动清理了,不要和外面的变量取相同的名字
为什么要写private Object cr
把private Object cr;删除,然后重写一遍for each循环,我已经实践过