我有一个年份对象。现在我们假设只有两年及其 getter 和 setter
private String mYearOne;
private String mYearTwo;
public String getmYearOne() {
return mYearOne; }
public void setmYearOne(String mYearOne) {
this.mYearOne = mYearOne; }
public String getmYearTwo() {
return mYearTwo; }
public void setmYearTwo(String mYearTwo) {
this.mYearTwo = mYearTwo; }
然后每年有三个保险计划。及其 getter 和 setter。
private String healthPlan;
private String carPlan;
private String housePlan;
private String healthPlanTwo;
private String carPlanTwo;
private String housePlanTwo;
public String getHealthPlan() {
return healthPlan; }
public void setHealthPlan(String healthPlan) {
this.healthPlan = healthPlan; }
public String getCarPlan() {
return carPlan; }
public void setCarPlan(String carPlan) {
this.carPlan = carPlan; }
public String getHousePlan() {
return housePlan; }
public void setHousePlan(String housePlan) {
this.housePlan = housePlan; }
public String getHealthPlan() { //For the second year
return healthPlan; }
public void setHealthPlan(String healthPlan) {
this.healthPlan = healthPlan; }
public String getCarPlan() {
return carPlan; }
public void setCarPlan(String carPlan) {
this.carPlan = carPlan; }
public String getHousePlan() {
return housePlan; }
public void setHousePlan(String housePlan) {
this.housePlan = housePlan; }
public String getHealthPlanTwo() {
return healthPlanTwo; }
public void setHealthPlanTwo(String healthPlanTwo) {
this.healthPlanTwo = healthPlanTwo; }
public String getCarPlanTwo() {
return carPlanTwo; }
public void setCarPlanTwo(String carPlanTwo) {
this.carPlanTwo = carPlanTwo; }
public String getHousePlanTwo() {
return housePlanTwo; }
public void setHousePlanTwo(String housePlanTwo) {
this.housePlanTwo = housePlanTwo; }
您会注意到代码很庞大。我需要在 <list>
中定义它们年。因此,如果考虑 10 年,我将乘以 10
分别由 3 = 30 个计划及其 getter 和 setter 组成。
这是怎么做到的?
最佳答案
我认为最好的选择是维护保险计划的年数和数组列表。这样,您可以获得一次数组列表,并获得您真正想要的任何年份的保险计划详细信息。其特点是单一保险计划数组列表和多年的单一数组列表。
private ArrayList mYear; private ArrayList healthPlan; private ArrayList carPlan; private ArrayList housePlan; public String getHousePlanForYear(String year){ return housePlan.get(mYear.indexOf(year)); } public void setHousePlanForYear(String housePlan, String year){ this.housePlan.set(mYear.indexOf(year), housePlan); }
其他计划也类似。当然,所有这一切都是假设年份始终存在以及其他边界条件。只需在这些 getter 和 setter 中添加边界检查即可。 :)
关于java - 从我的 DTO 创建列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8653192/