关于Set的类型转换(Java)

这里是一个Courses类,Student类和SetTest类,
其中SetTest类中用List存储可选课程,再把选到的课程存储到Student类定义的Set对象中
为什么我在SetTest类中foreach循环Set对象会提示转换不了Courses类型,我在Student类已经设置了类Set
求大神讲解!!!!小弟才疏学浅啊!!
图片说明
图片说明
图片说明
图片说明

你的getCourses方法没有指定类型,获得的时候就是个set类型,而并不是你想的用了Student类中的Set属性,直接把set,get方法定义为指定的类型就可以了。

因为你的Student的getCourses方法没有指定泛型类型,修正填上泛型就可以了:

 public Set<Courses> getCourses(){
     return courses;
 }

你的getCourses方法没有指定类型,获得的时候就是个set类型,而并不是你想的用了Student类中的Set属性,直接把set,get方法定义为指定的类型就可以了。