题目:
已知有十六支足球队参加比赛。写一个程序,把这16 支球队随机分为4 个组。
参赛国家:科特迪瓦,阿根廷,澳大利亚,塞尔维亚,荷兰,尼日利亚、日本,美
</pre>国,中国,新西兰,巴西,比利时,韩国,喀麦隆,洪都拉斯,意大利</p><p>注:使用Math.random 来产生随机数。(也可以使用其它方法)<pre name="code" class="java">public class Games {
public static void grouping(LinkedList<String> list){
LinkedList<String> newList=new LinkedList<String>(); //创建一个新集合
List<String> group1=new LinkedList<String>(); //创建四个分组
List<String> group2=new LinkedList<String>();
List<String> group3=new LinkedList<String>();
List<String> group4=new LinkedList<String>();
int size=list.size(); //根据list长度确定循环次数
for(int i=0;i<size;i++){
int random=(int)(Math.random()*list.size()); // 创建一个随机数,范围是0到list当前元素个数
newList.add(list.get(random)); //把下标为随机出的数的元素添加到newList
list.remove(random); //从list中删除刚才添加到newList中的元素,以避免随机出重复的数
}
group1=newList.subList(0, 4); //把newList切成四组
group2=newList.subList(4, 8);
group3=newList.subList(8, 12);
group4=newList.subList(12, 16);
System.out.println("第1组:"+group1); //输出
System.out.println("第2组:"+group2);
System.out.println("第3组:"+group3);
System.out.println("第4组:"+group4);
}
public static void main(String[] args) {
LinkedList<String> list=new LinkedList<String>(); //创建一个总名单
list.add("科特迪瓦");list.add("阿根廷");list.add("澳大利亚");list.add("塞尔维亚");
list.add("荷兰");list.add("尼日利亚");list.add("日本");list.add("美国");
list.add("中国");list.add("新西兰");list.add("巴西");list.add("比利时");
list.add("韩国");list.add("喀麦隆");list.add("洪都拉斯");list.add("意大利");
Games.grouping(list); //调用方法
}
}