为了账号安全,请及时绑定邮箱和手机立即绑定

最后foreach有问题

我就奇怪了,下面这么多人,编译都能通过吗?最后的foreach循环里面,讲师用的是(Course cr:student.courses),循环遍历对象的属性是Course,但student.courses明明是一个Hashset 对象,并没有指定泛型,也就是说默认属性是Object.为什么我的提示错了?而讲师的没问题?我转成Object后就没问题了,循环里面转成Course就可以打印了

正在回答

4 回答

HashSet并不是一个类型吧,它只是创建了一个Set的对象,而泛型又规定只能在Set里添加Course类型的对象,这并不矛盾

0 回复 有任何疑惑可以回复我~

视频里老师有讲到这个问题,在Student类中重新添加了泛型Course 下面两行

public Set<Course> courses;

this.courses=new HashSet<Course>();

0 回复 有任何疑惑可以回复我~

请教一下 那这里应该怎么改啊 代码是啥

0 回复 有任何疑惑可以回复我~
#1

慕妹2146737 提问者

转换下类型就行了
2015-09-18 回复 有任何疑惑可以回复我~

我的也提示错了,,,类型不匹配,后来加了Course泛型就没问题了

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409792    人
  • 解答问题       4340    个

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

进入课程

最后foreach有问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信