大家帮我解答一下问题吧

22计算机某班5名同学,要进行Java项目进展汇报演讲,现在采取随机排名后进行汇报。请先依次录入5名同等继陈级序号,然后展示出一组随机的排名顺序。
[要求]:(1)使用数组保存5名同学的班级序号,最终的随机排名也是用数组保存(2)5名同学的排名是随机的,也就是每次输入相同的数据,得到的排名顺序是不同的。[提示]:依次遍历数组中的每个元素,随机生成一个[0,5)之间的下标,让当前元素与该下标位置处的元素进行交换即可。随机数下标可参考Math.random0等方法。
1简答题
[示例]请依次输入5名同学的学号:
7 13 29 38 41
演讲顺序为(此处每次运行都不一样,这里仅展示一种可能的结果) :29 7 41 13 38

img


import java.util.Scanner;
import java.util.Random;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        System.out.print("请依次输入5名同学的学号:");
        int[] arr = new int[5];
        for (int i = 0; i < arr.length; i++) {
            int id = sc.nextInt();
            arr[i]=id;
        }
          
Random random = new Random();
for (int i = 0; i < arr.length; i++) {
    int index = random.nextInt(arr.length);
    int temp = arr[i];
    arr[i] = arr[index];
    arr[index] = temp;
}
System.out.println("演讲顺序为:");
for (int i = 0; i < arr.length; i++) {
    System.out.print(arr[i] + " ");
}
    }
}

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632