本帖最后由 于启会 于 2012-8-9 15:06 编辑
ArrayList<Integer> arr2=new ArrayList<Integer>();
arr2.add(3);
用反射给它的add方法添加值
arr2.getClass().getMethod("add", Object.class).invoke(arr2, "abc");
System.out.println(arr2.get(1));
这句话就行,为什么ArrayList<Integer>定义了类型是Integer,通过还能添加String类型呢?
arr2.getClass().getMethod("add",Integer.class).invoke(arr2,2);
System.out.println(arr2.get(1));
用这句话给它赋值却不行呢。
|