黑马程序员技术交流社区

标题: 关于泛型问题 [打印本页]

作者: heke    时间: 2013-11-23 18:56
标题: 关于泛型问题
本帖最后由 heke 于 2013-11-23 19:44 编辑

ArrayList<Integer> list = new ArrayList<Integer>();在这个泛型为Integer的ArrayList中存放一个String类型的对象,这个可以实现么?
作者: 低调的奢华    时间: 2013-11-23 19:15
反射的话应该可以实现!泛型是编译时的约束,编译器编译完后会去掉类型信息,所以只要跳过编译就行了!
  1. ArrayList<String> strList = new ArrayList<String>();
  2. ArrayList<Integer> intList = new ArrayList<Integer>();
  3. System.out.println(strList.getClass()==intList.getClass());
复制代码
从上面这段代码的结果是true就可看出。反射获得集合,然后在调用其add方法就行了
作者: 低调的奢华    时间: 2013-11-23 20:24
@FFF 楼主只问可以实现不?又没问咋写! 给一个思路就行了,动不动就给代码的心态是不好的。
不知道@能不能用!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2