数组的随机排名-CSDN博客

162 阅读1分钟

需求:

        某公司开发部5名开发人员,要进行项目进展汇报演讲,现在采取随机排名后进行汇报。

        请先依次录入5名员工的工号,然后展示出一组随机的排名顺序。

 

   public static void main(String[] args) {
        // 掌握数组中怎么与原数组值进行交换
        // 随机录入一组号码,最后要随机一组排名出来
        // 1.动态初始化数组
        int[] codes = new int[5];
        // 2.用户依次录入号码,并存入到数组中去
        Scanner sc = new Scanner(System.in);
        for(int i = 0;i < codes.length;i++){
            System.out.println("请您录入第" + (i+1) + "号码:");
            codes[i] = sc.nextInt();
        }
        // 3.展示当前的排名顺序
        System.out.println("当前的排名顺序为:");
        for(int i = 0;i < codes.length;i++){
            System.out.print(codes[i] + "\t");
        }
        System.out.println();
        // 4.遍历数组的每个值,并每次产生一个随机索引,让当前位置处与随机索引处元素值互换
        Random r = new Random();
        for(int i = 0;i < codes.length;i++){
            int index = r.nextInt(codes.length - 1);
            int temp = codes[index];
            codes[index] = codes[i];
            codes[i] = temp;
        }
        // 4.遍历随机排名后的数组并输出
        System.out.println("随机的排名顺序为:");
        for(int i = 0;i < codes.length;i++){
            System.out.print(codes[i] + "\t");
        }
    }

 运行结果: