两个类互转的一种通用方法
使用场景:两个类之间,一个类中所有字段在另一个类中可以找到。常用的方法有For循环然后依次新建对象设置值放入新List中,有失美观。可以使用下面的这个方法:
private static List clazzConverter(List sourceList, Class target) {List resultList = new ArrayList<>();if (!(sourceList.isEmpty() || sourceList == null)) {List targetList = sourceList.stream().map(s -> JSONUtil.toBean(JSONUtil.toJsonStr(s), target)).collect(Collectors.toList());return targetList.isEmpty() ? resultList : targetList;}return resultList;}
使用如下:
public static void main(String[] args) throws InterruptedException {AppProductSku sku = new AppProductSku();// 共同字段sku.setTitle("ceshi");sku.setSku("H1092");sku.setSpuOptionValue("1.6m*1.8m");List spuList = new ArrayList<>();spuList.add(sku);List options = clazzConverter(spuList, SpuOptionValue.class);System.out.println();}
调试截图如下:


原理就是先将第一个类转为json,再从json转回新对象。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
