java - 合并两个不同列表对象的列表,将对象的内容放入第三个对象列表中,其中包含前两个Java中的字段

标签 java list domain-object

这是成员(member):

public class Member implements Serializable {
    private static final long serialVersionUID = 1L;

    @EmbeddedId
    private MemberPK id;

    @Column(name="BUSINESS_UNIT", nullable=true, length=2)
    private char businessUnit;

    @Column(name="DELETED_IND", nullable=false, length=1)
    private char deletedInd;

    @Column(name = "FIRSTNAME",length=14)
    private String firstname;

    @Column(name = "LASTNAME", length = 14)

}

这是资格:

public class Eligibility implements Serializable {
    private static final long serialVersionUID = 1L;

    @EmbeddedId
    private MemberSpanPK id;

    @Column(name = "AFF_NBR", nullable=false, length=16)
    private String affNbr;

    @Column(name = "BUSINESS_UNIT", length = 2)
    private Character businessUnit;

    @Column(name = "CARRIER", nullable=true, length = 2)
    private char carrier;

    @Column(name="DELETED_IND", nullable=false, length=1)
}

这是我想要将前 2 个对象放入其中的第三个对象。

public class MemberData {

    // Members
    private String membernbr;
    private String medicaidNbr;
    private String namefirst;
    private String namelast;    

    //Eligibility 
    private String memberpcp;
    private String bu;
    private String carrier;
    private String deletedInd;
}

最佳答案

带有访问器和修改器(getter 和 setter)的简单域驱动方法怎么样?

MemberData memberData = new MemberData();
memberData.copyMember(/* Member instance */); //Inside get from member and set at memberData.
memberData.copyEligibility(/* Eligibility instance*/); //Inside get from eligibility and set at memberData.

您可以运行一些顶级循环以获得成员(member)的相应资格数据,并创建一个 MemberData 实例。

**** 编辑 ****

请查看示例对象和代码示例...

public class Member implements Serializable {
public MemberPK getId() {
    return id;
}

public void setId(MemberPK id) {
    this.id = id;
}

public char getBusinessUnit() {
    return businessUnit;
}

public void setBusinessUnit(char businessUnit) {
    this.businessUnit = businessUnit;
}

public char getDeletedInd() {
    return deletedInd;
}

public void setDeletedInd(char deletedInd) {
    this.deletedInd = deletedInd;
}

public String getFirstname() {
    return firstname;
}

public void setFirstname(String firstname) {
    this.firstname = firstname;
}

private static final long serialVersionUID = 1L;

private MemberPK id;

private char businessUnit;

private char deletedInd;

private String firstname;


}

public class Eligibility implements Serializable {
private static final long serialVersionUID = 1L;

private MemberSpanPK id;

private String affNbr;

private Character businessUnit;

private char carrier;

private String deleteInd;

public MemberSpanPK getId() {
    return id;
}

public void setId(MemberSpanPK id) {
    this.id = id;
}

public String getAffNbr() {
    return affNbr;
}

public void setAffNbr(String affNbr) {
    this.affNbr = affNbr;
}

public Character getBusinessUnit() {
    return businessUnit;
}

public void setBusinessUnit(Character businessUnit) {
    this.businessUnit = businessUnit;
}

public char getCarrier() {
    return carrier;
}

public void setCarrier(char carrier) {
    this.carrier = carrier;
}

public String getDeleteInd() {
    return deleteInd;
}

public void setDeleteInd(String deleteInd) {
    this.deleteInd = deleteInd;
} 
}

public class MemberPK {
private String memberNbr;

public String getMemberNbr() {
    return memberNbr;
}

public void setMemberNbr(String memberNbr) {
    this.memberNbr = memberNbr;
}
}

public class MemberSpanPK {
private String memberNbr;

public String getMemberNbr() {
    return memberNbr;
}

public void setMemberNbr(String memberNbr) {
    this.memberNbr = memberNbr;
}
}

public class EligibilityVO {
//Eligibility 
private String memberpcp;
private String bu;
private String carrier;
private String deletedInd;
public String getMemberpcp() {
    return memberpcp;
}
public void setMemberpcp(String memberpcp) {
    this.memberpcp = memberpcp;
}
public String getBu() {
    return bu;
}
public void setBu(String bu) {
    this.bu = bu;
}
public String getCarrier() {
    return carrier;
}
public void setCarrier(String carrier) {
    this.carrier = carrier;
}
public String getDeletedInd() {
    return deletedInd;
}
public void setDeletedInd(String deletedInd) {
    this.deletedInd = deletedInd;
}
}

public class MemberData {
 // Members
private String membernbr;
private String medicaidNbr;
private String namefirst;
private String namelast;
private List<EligibilityVO> eligibilities;
public List<EligibilityVO> getEligibilities() {
    return eligibilities;
}
public void setEligibilities(List<EligibilityVO> eligibilities) {
    this.eligibilities = eligibilities;
}
public void addEligibilities(EligibilityVO eligibility) {
    if(null == this.eligibilities) {
        this.eligibilities = new ArrayList<EligibilityVO>();
    }
    this.eligibilities.add(eligibility);
}
public String getMembernbr() {
    return membernbr;
}
public void setMembernbr(String membernbr) {
    this.membernbr = membernbr;
}
public String getMedicaidNbr() {
    return medicaidNbr;
}
public void setMedicaidNbr(String medicaidNbr) {
    this.medicaidNbr = medicaidNbr;
}
public String getNamefirst() {
    return namefirst;
}
public void setNamefirst(String namefirst) {
    this.namefirst = namefirst;
}
public String getNamelast() {
    return namelast;
}
public void setNamelast(String namelast) {
    this.namelast = namelast;
}    

}

以及合并数据的示例类...

public class MergeData {

public static void main(String[] args) {

  List<Member> members = new ArrayList<Member>();//Your service level member list here
  List<Eligibility> eligibilities = new ArrayList<Eligibility>();//Your service level eligibility list here
  List<MemberData> memberDatas = new ArrayList<MemberData>();
  for (Member member : members) {
    MemberData memberData = new MemberData(); 
    for (Eligibility eligibility : eligibilities) {
        if(member.getId().getMemberNbr() == eligibility.getId().getMemberNbr()) {
            EligibilityVO eliVo = new EligibilityVO();
            eliVo.setBu(eligibility.getAffNbr());
            //set others
            memberData.addEligibilities(eliVo);
        }
    }
    memberData.setNamefirst(member.getFirstname());
    //Set others
  }
  }
  }

希望这有帮助。

关于java - 合并两个不同列表对象的列表,将对象的内容放入第三个对象列表中,其中包含前两个Java中的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28325643/

相关文章:

java - 如何用java打开exe文件

java - 如何生成60000个随机数插入AVL树并进行reshuffle操作?

java - 如何在 AssertJ 中为集合创建自定义断言

java - 检索Java中的内部元素

c# - AutoMapper 将源对象上的单个列表映射到目标对象上的两个列表

java - 尝试在 Java 中的 Apache Commons VFS 中设置 Amazon S3 文件系统

Python-删除二维列表中的列

python - 如何添加列表的特定部分?

php - 如何使用 ACL 根据某个用户的权限(例如 EDIT)过滤域对象列表?