/** * 轉換list類型 * @param oldList 被複制的list * @param clazz 新list的元素類型 * @return newList 複製完成的的集合 */ public static <T> List<T> copyList(List<?> oldList, Class<T> clazz){ //判斷被複制的list是否爲空 if (oldList == null){ return new ArrayList<>( 0 ); } //初始化新list List<T> newList = new ArrayList<>( ); oldList.forEach( o -> { try { T o1 = clazz.newInstance(); BeanUtils.copyProperties( o,o1 ); newList.add( o1 ); } catch (InstantiationException | IllegalAccessException e) { e.printStackTrace(); } } ); return newList; }