如何比较 java 中数组列表中的比较元素
How to Compare comparing elements in an arraylist in java
我有一个足球队数组列表
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
谁能帮帮我
您可能正在寻找一种组合数组元素的方法。
因此,如果有四支球队(t0、t1、t2、t3)组成一个小组,则组合为
- t0 - t1
- t0 - t2
- t0 - t3
- t1 - t2
- t1 - t3
- t2 - t3
有了这个结果组合列表,您应该能够编写必要的循环。
这是一个主意。 (我希望他们没有把问题弄错)
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 获取匹配项。
我有一个足球队数组列表
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
谁能帮帮我
您可能正在寻找一种组合数组元素的方法。
因此,如果有四支球队(t0、t1、t2、t3)组成一个小组,则组合为
- t0 - t1
- t0 - t2
- t0 - t3
- t1 - t2
- t1 - t3
- t2 - t3
有了这个结果组合列表,您应该能够编写必要的循环。
这是一个主意。 (我希望他们没有把问题弄错)
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 获取匹配项。