需求:某公司开发部5名开发人员,要进行项目进展汇报演讲,现在采取随机排名后进行汇报。请先依次录入5名员工的工号,然后展示出一组随机的排名顺序。
实现步骤:
1.在程序中录入5名员工的工号存储起来 ---> 使用动态初始化数组的方式。
2.依次遍历数组中的每个数据。
3.每遍历到一个数据,都随机一个索引值出来,让当前数据与该索引位置处的数据进行交换
源码:
import java.util.Random;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 1.在程序中录入5名员工的工号存储起来 ---> 使用动态初始化数组的方式。
int[] ids = new int[5];
Scanner sc = new Scanner(System.in);
for (int i = 0; i < ids.length; i++) {
// i = 0, 1, 2, 3, 4
System.out.println("请您输入当前第" + (i + 1) +"个员工的工号: ");
int id = sc.nextInt();
ids[i] = id;
}
Random r = new Random();
// 2.依次遍历数组中的每个数据。
for (int i = 0; i < ids.length; i++) {
// 当前元素: ids[i]
// 3.每遍历到一个数据,都随机一个索引值出来,让当前数据与该索引位置处的数据进行交换
int index = r.nextInt(ids.length);
int temp = ids[index];
ids[index] = ids[i];
ids[i] = temp;
}
// 4.遍历数组中的工号输出即可
for (int id : ids) {
System.out.print(id + " ");
}
}
}
执行结果: