A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

ArrayList<Integer> list = new ArrayList<Integer>();
在这个泛型为Integer的ArrayList中存放一个String类型的对象。
怎样才能做到呢,就是做到了,有什么应用价值呢
情举例谢谢!!

1 个回复

倒序浏览
public class insertStrToArray {
          public static void main(String[] args) throws Exception {
                  ArrayList<Integer> list = new ArrayList<Integer>();
                  Method methodAddString = list.getClass().getMethod("add", Object.class);
                  methodAddString.invoke(list, "abc");
                  System.out.println(list);
          }
}这个可以通过反射的方式实现,因为泛型的作用层在编译时。而反射直接获得了add方法的字节码跳过编译层在运行时直接添加。这样就骗过了编译。
作用嘛,比如你得这个集合里存放int类型的数据,但是有及个别的地方需要添加其他类型的数据。就可以用上了!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马