问题:
1.2.3已知有十六支男子足球队参加2008 北京奥运会。写一个程序,把这16 支球队随机分为4 个组。
注:参赛球队列表见附录
注2:使用Math.random 来产生随机数。(也可以使用其它方法)
2. 2008 北京奥运会男足参赛国家:
科特迪瓦,阿根廷,澳大利亚,塞尔维亚,荷兰,尼日利亚、日本,美国,中国,
新西兰,巴西,比利时,韩国,喀麦隆,洪都拉斯,意大利
方法一:
package com.work.Jo7o5;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Test {
public static void main(String[] args) {
List<String> list = new ArrayList<String>(20);
Collections.addAll(list,"科特迪瓦","阿根廷","澳大利亚","塞尔维亚","荷兰","尼日利亚","日本","美国","中国",
"新西兰","巴西","比利时","韩国","喀麦隆","洪都拉斯","意大利");
System.out.println(list);
Collections.shuffle(list);
for(int i=0 ; i<4 ;++i){
System.out.println("第"+i+"组:");
for(int j=i*4;j<i*4+4;++j){
System.out.println(list.get(j));
}
}
}
}
Output:
[科特迪瓦, 阿根廷, 澳大利亚, 塞尔维亚, 荷兰, 尼日利亚, 日本, 美国, 中国, 新西兰, 巴西, 比利时, 韩国, 喀麦隆, 洪都拉斯, 意大利]
第0组:
澳大利亚
塞尔维亚
韩国
美国
第1组:
意大利
尼日利亚
阿根廷
科特迪瓦
第2组:
比利时
荷兰
日本
中国
第3组:
喀麦隆
洪都拉斯
新西兰
巴西
Process finished with exit code 0
方法二:
package com.work.Jo7o5;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
public class Test {
public static void main(String[] args) {
List<String> list = new ArrayList<String>(20);
Collections.addAll(list,"科特迪瓦","阿根廷","澳大利亚","塞尔维亚","荷兰","尼日利亚","日本","美国","中国",
"新西兰","巴西","比利时","韩国","喀麦隆","洪都拉斯","意大利");
System.out.println(list);
Random r = new Random();
for(int i=0 ; i<4 ; ++i){
System.out.println("第"+i+"组:");
for(int j=0 ; j<4 ; ++j){
int index = r.nextInt(list.size());
System.out.println(list.get(index));
list.remove(index);
}
}
}
}
Output:
[科特迪瓦, 阿根廷, 澳大利亚, 塞尔维亚, 荷兰, 尼日利亚, 日本, 美国, 中国, 新西兰, 巴西, 比利时, 韩国, 喀麦隆, 洪都拉斯, 意大利]
第0组:
尼日利亚
中国
巴西
比利时
第1组:
洪都拉斯
喀麦隆
阿根廷
澳大利亚
第2组:
韩国
塞尔维亚
日本
新西兰
第3组:
科特迪瓦
美国
荷兰
意大利