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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 罗123 中级黑马   /  2015-1-10 22:55  /  1229 人查看  /  9 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

:ArrayList list = new ArrayList(); 在这个泛型为Integer的ArrayList中存放一个String类型的对象。

9 个回复

倒序浏览
给你个方向,用反射做!!! 然后就看你自己的了!!
回复 使用道具 举报
这个用反射,跳过泛型,你想想吧。
回复 使用道具 举报
反射,因为class文件不存泛型
回复 使用道具 举报
通过反射的方式,只要跳过编译器就可以往某个泛型集合中加入其他类型的数据!
回复 使用道具 举报
通过反射的方式,一定可以
回复 使用道具 举报
18255007004 发表于 2015-1-11 11:18
通过反射的方式,一定可以

你复习到什么地方了
回复 使用道具 举报
kakasa 中级黑马 2015-1-11 12:06:03
8#
可以用反射。

要是没学到,也可以用一个没有泛型的新引用指向这个集合,然后就可以添加字符串了。
回复 使用道具 举报
罗123 中级黑马 2015-1-11 13:52:45
9#
菜鸟一号 发表于 2015-1-11 09:57
反射,因为class文件不存泛型

package com.itheima;
/*
*
:ArrayList list = new ArrayList(); 在这个泛型为Integer的ArrayList中存放一个String类型的对象。
*/
import java.util.*;
import java.lang.reflect.Method;
public class TestF
{
        public static void main(String[] args)throws Exception
        {
          ArrayList<Integer> list = new ArrayList<Integer>();
          Method [] m=list.getClass().getMethods();
          String str="abc";
          System.out.println(m.length);
          for(int i=0;i<m.length;i++)
          {
                  System.out.println(m);
          }
          m[0].invoke(list,str);
          int len=list.size();
          for(int i=0;i<len;i++)
          {
                  System.out.println(list.get(i));
          }
        }
}
第20条还是会出异常  求大神解答
回复 使用道具 举报
执笔画梦 来自手机 中级黑马 2015-1-11 19:24:38
10#
反射真难
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马