黑马程序员技术交流社区
标题:
泛型中不能理解的问题
[打印本页]
作者:
屠赞华
时间:
2015-4-17 23:46
标题:
泛型中不能理解的问题
public static void main(String[] args) {
List<?> es = new ArrayList<String>();//这是泛型的通配符 没有问题
//es.add(null);//这是为什么呢? 为什么添加null正确 null的时候是正确的
//es.add(123);//添加其它类型都不对呢 Integer 或者是String等其他类型就不行呢 这是为什么
}
}
作者:
梦逆光377
时间:
2015-4-18 00:08
对android越来越有信心了
作者:
sisel
时间:
2015-4-18 09:48
es 被声明为List<?> 那么其元素类型就未知,只能知道是Object,Integer 或者是String是具体的类型,改为List<? extends String>就可以接受String
作者:
zhuchangbao
时间:
2015-4-18 09:49
因为你声明的时候就是String类型的,第一个null是属于string类型的,但是123是整型的,不一样就不能添加进去。个人见解~
作者:
Wilsoncyf
时间:
2015-4-18 12:56
还没学到那,看看
作者:
有无相生
时间:
2015-4-18 14:06
向上转型ok吧
作者:
屠赞华
时间:
2015-4-18 22:01
梦逆光377 发表于 2015-4-18 00:08
对android越来越有信心了
社么意思?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2