慕慕309619
2015-01-26 18:10
老师 最后不能用foreach 要怎么取出元素啊
.Arraylist源码中get方法返回值还是有泛型
public E get(int index) { RangeCheck(index); return (E) elementData[index]; }
还是要通过反射取值
Method m2=clazz.getDeclaredMethod("get", int.class); for(int i=0;i<list.size();i++){ Object o=m2.invoke(list, i); if(o instanceof String){ System.out.println("String:"+m2.invoke(list, i)); }else if(o instanceof Integer){ System.out.println("Integer:"+m2.invoke(list, i)); } }
ArrayList<String> 这样的泛型加了int的进去 输出来报错 输出String没问题
就是用下标输出单个都会抛异常
可以用for循环
反射——Java高级开发必须懂的
151466 学习 · 335 问题
相似问题