两两对比
/**
* @program: demo2
* @description:
* @author: KevinJee
* @create: 2022-06-21 13:47
**/
public class q {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
list.add("5");
for (int i = 0; i < list.size(); i++) {
for (String s : list) {
if (!list.get(i).equals(s)) {
System.out.println(list.get(i) + "-" + s);
}
}
}
}
}
输出结果:
1-2
1-3
1-4
1-5
2-1
2-3
2-4
2-5
3-1
3-2
3-4
3-5
4-1
4-2
4-3
4-5
5-1
5-2
5-3
5-4
但是,1-2对比 和 2-1对比效果一样,重复。
解决:
public class q {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
list.add("5");
for (int i = 0; i < list.size(); i++) {
for (String s : list) {
if (!list.get(i).equals(s)) {
System.out.println(list.get(i) + "-" + s);
}
}
list.remove(i);
i--;
}
}
}
输出结果:
1-2
1-3
1-4
1-5
2-3
2-4
2-5
3-4
3-5
4-5