集合类型转换工具类

没有警告的

public static void main(String[] args) {
        ArrayList<String> vos = new ArrayList<>();
        vos.add("123");
        List<Object> objects = listClassCast(vos, Object.class);
        List<Integer> integers = listClassCast(vos, Integer.class);
    }

    private static <T> List<T> listClassCast (List<?> source, Class<T> targetClass){
        ArrayList<T> ts = new ArrayList<>();
        for (Object o : source) {
            T t = null;
            try {
                t = targetClass.newInstance();
            } catch (InstantiationException | IllegalAccessException e) {
                e.printStackTrace();
            }
            assert t != null;
            BeanUtils.copyProperties(o,t);
            ts.add(t);
        }
        return ts;
    }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容