如果要是不给Student类设置Course泛型设置的话,该怎么写呢?

来源:4-11 学生选课---通过 Set 集合管理课程

山巅对弈

2017-08-30 10:15

最后的for each 循环要怎么写:

public static void main(String[] args) {

SetTest st = new SetTest();

st.testAdd();

st.testForEach();

//创建一个学生对象

Student student = new Student("1","小明");

System.out.println("欢迎小明同学来选课" + "\n" +"请输入要修的课程:");

//创建Scanner对象

Scanner console = new Scanner(System.in);

for(int i=1;i<4;i++){

System.out.println("请输入要选的第"+i+"门课程的编码");

String courseId = console.next();

for(Course cr:st.couresToSelect){

if(cr.id.equals(courseId)){

student.courses.add(cr);

}

}

}

//打印出学生所选的课程

for(Course cr:student.courses){

System.out.println(cr.id+":"+cr.name);

}

}

加粗的应该写什么代码?

写回答 关注

2回答

  • 冰封一切1
    2017-08-30 11:32:13
    已采纳

    不加Course泛型的话foreach循环应该还是一样的写法,foreach(对象类型 对象名:需要遍历的对象){...}

    不过当遍历的对象中存在其他类型的数据的时候可能会出现类型转换错误,泛型的作用是规范类型

    山巅对弈

    不晓得你的想法和我的 想法一不一样,我已经找到解答方法了,谢谢……

    2017-08-30 14:03:03

    共 1 条回复 >

  • 山巅对弈
    2017-08-30 14:01:30

    for(Object cr:student.courses){

    Course cd = (Course)cr;

    System.out.println(cd.id+":"+cd.name);

    }


    山巅对弈 回复冰封一切1

    我就是想知道下不用泛型要怎么写……

    2017-08-31 15:19:09

    共 2 条回复 >

Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409792 学习 · 4340 问题

查看课程

相似问题