对象值的复制

Posted coderising

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对象值的复制相关的知识,希望对你有一定的参考价值。

 public static <T> T obj2Obj(Object origin, Class<T> clazz) 
Gson gson = new Gson();
if(origin == null) return null; return gson.fromJson(gson.toJson(origin), clazz);
//把一个list对象转成含有相同属性的另外一个list
public static <C extends Collection<T>, T> C obj2List(Object origin, Class<T> type)
Gson gson = new Gson();
if(origin == null) return null; Type[] argumentTypes = new Type[]type; Type parameterizedType = ParameterizedTypeImpl.make(List.class, argumentTypes, null); return gson.fromJson(gson.toJson(origin), parameterizedType);

 

public static <T> T obj2Obj(@C("待转对象")Object origin, @C("转成的类")Class<T> clazz) 
if(origin == null)
return null;

return gson.fromJson(gson.toJson(origin), clazz);


public static <C extends Collection<T>, T> C obj2List(Object origin, Class<T> type)
if(origin == null)
return null;


Type[] argumentTypes = new Type[]type;
Type parameterizedType = ParameterizedTypeImpl.make(List.class, argumentTypes, null);
return gson.fromJson(gson.toJson(origin), parameterizedType);

以上是关于对象值的复制的主要内容,如果未能解决你的问题,请参考以下文章

如何在现有 Javascript 对象中添加具有值的动态键? [复制]

使用 TypeScript 从数组中删除具有特定 id 字段值的对象的聪明方法是啥? [复制]

C#通过反射实现两个对象相同属性值的复制

C#用反射实现两个类的对象之间相同属性的值的复制

C#利用反射实现两个类的对象之间相同属性的值的复制

OC中对象的复制:一