您的位置:首页 > 职场人生

Java 面试题之反射的应用(如何在List<String> list = new ArrayList<String>();中放入Integer类型的数据)

2018-03-26 12:04 966 查看
面试题中遇到的问题,相信各位小伙伴,在面试中遇到过各类神奇的问题,不是各位说不会,也可能是没有实际应用过这类的方法,所以在面试时非常吃亏,给面试官的印象也不好。在此记录下来,与各位共勉!!
如何在List<String> list = new ArrayList<String>();中放入Integer类型的数据,之前没有遇到过这种情况,回来找了一下度娘才明白,应用到了反射机制。import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;

public class Demo {

public static void main(String[] args) throws NoSuchMethodException,
SecurityException, IllegalAccessException,
IllegalArgumentException, InvocationTargetException {

List<String> list = new ArrayList<String>();
Class<?> cls = list.getClass();
Method method = cls.getMethod("add", Object.class);
method.invoke(list, 1);
method.invoke(list, "s");
method.invoke(list, 2);
method.invoke(list, 4);

System.out.println(list);

ArrayList<Object> obj = new ArrayList<Object>();
obj.addAll(list);
for (int i = 0; i < obj.size(); i++) {
System.out.println(obj.get(i));
}

}
}


而且这种应用直接跳过编译!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐