[英]How to Compare comparing elements in an arraylist in java
我有一個足球隊的 Arraylist
List<String> teams= new ArrayList<String>(teamCount);
teams.add("chelsea");
teams.add("Manchester Utd");
teams.add("Mancity");
teams.add("Swanser");
teams.add("asernal");
teams.add("aston villa");
teams.add("bacerlona");
teams.add("realmadrid");
List<String>Group1= teams.subList(0,4);
List<String>Group2= teams.subList(4,8);
我需要進行這樣的比較:在每個 Arraylist 中進行比較,以便每個團隊都必須在自己的組中與每個團隊進行比賽。 例如:
Group1
Chelsea vs Manchester Utd
Mancity vs Swanser
Chelsea vs Mancity
Chelsea vs Swanser
Mancity vs Manchester Utd
Manchester Utd vs Swanser
and Group 2
Asernal vs Aston villa
Bacerlona vs Aston villa
Realmadrid vs Aston villa
Realmadrid vs Bacerlona
Realmadrid vs Asernal
Asernal vs Bacerlona
誰能幫我。
這是一個想法。 (我希望他們沒有把問題弄錯)
import java.util.ArrayList;
import java.util.List;
public class p {
public static void main(String[] args) {
// Group1 consists of 4 teams, A,B,C and D
List<String>Group1= new ArrayList<String>() ;
Group1.add("A");
Group1.add("B");
Group1.add("C");
Group1.add("D");
// matches stores the names of the teams which have been selected for a match
List<String>matches = new ArrayList<String>();
for(String team1: Group1) {
for(String team2: Group1) {
if(!team1.equals(team2) && !matches.contains(team1+team2) && !matches.contains(team2+team1)) {
matches.add(team1+team2);
System.out.println(team1 + " vs " + team2);
}
}
}
}
}
您可以使用相同的方法獲取 Group2 的匹配項。
您可能正在尋找的是一種組合數組元素的方法。
因此,在一個小組中有四支球隊(t0、t1、t2、t3),組合將是
有了這個結果組合列表,您應該能夠編寫必要的循環。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.