需求:
某公司开发部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");
}
}
运行结果: