11、16支足球队随机分组

编程题目:

11.将16支足球队随机分成四组:

科特迪瓦    阿根廷       澳大利亚    塞尔维亚
荷兰       尼日利亚      日本        美国
中国       新西兰        巴西        比利时
韩国       喀麦隆        洪都拉斯    意大利

示例代码:

package program.collection.exercise11;

import java.util.*;

/**
 * 11.将16支足球队随机分成四组。
 *  科特迪瓦   阿根廷     澳大利亚    塞尔维亚
 *  荷兰      尼日利亚    日本        美国
 *  中国      新西兰      巴西        比利时
 *  韩国      喀麦隆      洪都拉斯    意大利
 */

public class FootballList {
    public static void main(String[]args) {

        System.out.println("16支足球队随机分组如下:");
        listFootball();

    }

    //随机分组
    private static void listFootball() {

        List<String> list = new ArrayList<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("意大利");

        /*//第一种方式:随机获取球队
        for(int i=1;i<=4;i++){
            System.out.print("第"+i+"组:");
            for(int j=0;j<4;j++){
                //取随机数第一种方式
                Random random = new Random();
                String country = list.get(random.nextInt(list.size()));
                System.out.print("\t"+country);
                list.remove(country); //注意:分完组的球队需要移除
            }
            System.out.println();
        }*/

        //第二种方式:随机获取下标
        for(int i=1;i<=4;i++){
            System.out.print("第"+i+"组:");
            for(int j=0;j<4;j++){
                //取随机数第二种方式
                int index = (int) (Math.random()*list.size());
                System.out.print("\t"+list.get(index));
                list.remove(index); //注意:分完组的球队需要移除
            }
            System.out.println();
        }

    }
}

结果显示:

这里写图片描述


版权声明:本文为jsc123581原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。