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

集合与泛型

coursesToSelect是集合,将string添加入集合,会自动忽略类型,当作object处理,那为什么添加一个字符串的时候会有ClassToSelect异常呢?

如果说coursesToSelect已经规定了可存放的类型,是泛型的话,那泛型是不需要进行类型转换的呀?

正在回答

2 回答

添加字符串进去的时候是没问题的,只是后来在取出集合中的元素时,需要将集合中的元素强制类型转换为course,这个时候原来的字符串虽然现在也是Object类,但是没办法被转换成course,所以才报错

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

这个异常是在循环遍历的时候抛出的,添加进去是没有问题的。

规定泛型的话,规定的是<Course>的话,那List里存放的就是Course类型的引用不是Object了,取出来的时候也是Course类型的引用,不需要强制转换了。。

当然规定泛型的话,规定的是<Course>的话,无法add其他类型的对象,编译的时候就会出错

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

举报

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

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

进入课程

集合与泛型

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