У меня есть вопрос здесь.У меня есть два списка, и оба эти списка имеют некоторые общие элементы.Эти общие элементы вместе со значениями должны быть помещены в другой список.что очень раздражает как требование.
Мои классы тестирования:
import java.util.ArrayList;
import java.util.List;
public class Player {
private int singleModeVal;
private int doubleModeVal;
private String mode;
private String name;
public Player(){}
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
public int getSingleModeVal(){
return singleModeVal;
}
public void setSingleModeVal(int val1){
this.singleModeVal=val1;
}
public int getDoubleModeVal(){
return doubleModeVal;
}
public void setDoubleModeVal(int val2){
this.doubleModeVal=val2;
}
public String getMode(){
return mode;
}
public void setMode(String mode){
this.mode = mode;
}
public List<Player> getSinglePlayerscoreList(){
List<Player> singlePlayerscoreList = new ArrayList<Player>();
for(int i=0;i<2;i++){
Player player = new Player();
player.setName("A");
player.setMode("singlePlayerMode");
player.setSingleModeVal(100);
player.setDoubleModeVal(200);
singlePlayerscoreList.add(player);
}
return singlePlayerscoreList;
}
public List<Player> getDoublePlayerscoreList(){
List<Player> doublePlayerscoreList = new ArrayList<Player>();
for(int i=0;i<2;i++){
Player player = new Player();
player.setName("B");
player.setMode("doublePlayerMode");
player.setSingleModeVal(300);
player.setDoubleModeVal(400);
doublePlayerscoreList.add(player);
}
return doublePlayerscoreList;
}
}
Другой класс:
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Tester {
private Player player = new Player();
public static void main(String args[]){
new Tester().showValue();
}
private void showValue(){
List<Player> singlePlayerScore = new ArrayList<Player>();
List<Player> doublePlayerScore = new ArrayList<Player>();
singlePlayerScore = player.getSinglePlayerscoreList();
doublePlayerScore = player.getDoublePlayerscoreList();
List<Player> allScoreList = new ArrayList<Player>();
allScoreList.addAll(singlePlayerScore);
allScoreList.addAll(doublePlayerScore);
How do i iterate here, and print my data as:
Name singlePlayerScore Double Player Score TotalScore
A 100 200 300
B 300 400 700
}
}
}
Когда я повторяюсь, я получаю Aдважды с его значением и B как то же самое.
Есть ли эффективный способ выполнить как требуется.