gpt4 book ai didi

java - 将 A 类的对象复制到 B 类的对象,其中 A 和 B 的组成非常相似

转载 作者:行者123 更新时间:2023-12-01 12:05:39 25 4
gpt4 key购买 nike

我正在尝试执行以下冗余代码 - 将类 FeedDBTableRow 的对象复制到 Feed 对象中 - 其中它们大多具有重叠的变量集,并且我正在尝试复制这些常见的变量集。是否有设计模式或注释处理器可以帮助我减少这些(可能容易出现错误的)代码行?

这样做的原因基本上是我想将Retrofit与GSon和Realm一起使用(而Realm由于其自身的构造,需要Pojo从RealmObject类扩展,同时这样做会创建一个GSON错误 - 它在多个地方都有记录)

public static Feed getFeedFromDBFeedRow(FeedDBTableRow f){

Feed x = new Feed();
x.setId(f.getId());
x.setText(f.getText());
x.setTime_created(f.getTime_created());
x.setTime_modified(f.getTime_modified());
x.setComments_count(f.getComments_count());
x.setLikes_count(f.getLikes_count());
x.setFeed_type(f.getFeed_type());
x.setObj_id(f.getObj_id());
x.setImage(f.getImage());
x.setUser_name(f.getUser_name());
x.setUser_earthmile_points(f.getUser_earthmile_points());
x.setLiked(f.isLiked());
x.setCommented(f.isCommented());
x.set_private(f.isIs_private());
x.setUrl(f.getUrl());
x.setFeed_creator_id(f.getFeed_creator_id());

return x;
}

我的 Feed 类是:

public class Feed {

int id;
String text;
Date time_created;
Date time_modified;
int comments_count;
int likes_count;
String feed_type;
int obj_id;
String image;
String user_name;
String user_earthmile_points;
boolean liked;
boolean commented;
boolean is_private;
String url;
int feed_creator_id;

public Feed() {} // required for being Parcelable
}

FeedDBTableRow 类是:

public class FeedDBTableRow extends RealmObject{ // having this necessity to extend RealmObject is the source of all problem, but I have to do this, hence two classes with similar composition
private int id;
private String text;
private Date time_created;
private Date time_modified;
private int comments_count;
private int likes_count;
private String feed_type;
private int obj_id;
private String image;
private String user_name;
private String user_earthmile_points;
private boolean liked;
private boolean commented;
private boolean is_private;
private String url;
private int feed_creator_id;
}

最佳答案

看看 Apache BeanUtils:http://commons.apache.org/proper/commons-beanutils/javadocs/v1.9.2/apidocs/index.html特别是,BeanUtils.copyProperties() 可能对您有用。

关于java - 将 A 类的对象复制到 B 类的对象,其中 A 和 B 的组成非常相似,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27641308/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com