方法一
- 循环originList
- 用Fastjson或者Gson把每一个元素转为JSON字符串
- 再把JSON字符串转为Java目标实体对象
- 把目标实体对象加入到集合中
Gson代码如下:
List<T> distinList = new ArrayList<>();
Gson gson = new Gson();
for (Object obj : originList) {
T t = gson.fromJson(gson.toJson(obj),T.class);
// do something
distinList.add(t);
}
方法一适用于需要对单个属性处理的场景,如果不需要对单个属性单独处理参考方法二。
方法二
- 用Fastjson或者Gson把list转为JSON字符串
- 再把JSON字符串转为Java实体集合对象
Gson代码如下:
Gson gson = new Gson();
List<T> distinList = gson.fromJson(gson.toJson(originList),new TypeToken<List<T>>(){}.getType());