1、随机数组元素

package com.domain.var;

import java.util.Random;
import java.util.Scanner;

public class variabledemo {
    public static void main(String[] args) {
        // 存储五个工号
        int[] arr = new int[5];

        Scanner sc = new Scanner(System.in);

        for (int i = 0; i < arr.length; i++) {
            System.out.println("请输入第"+ (i + 1) +"个员工工号");
            int number = sc.nextInt();
            arr[i] = number;
        }

        // 对索引交换从而对数组进行随机排序
        Random r = new Random();
        for (int i = 0; i < arr.length; i++) {
            int rand = r.nextInt(arr.length);

            int temp = arr[i];
            arr[i] = arr[rand];
            arr[rand] = temp;
        }

        // 输出查看结果
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i]+ "\t");
        }

    }
}

2、冒泡排序

{5, 2, 3, 1} 两两交换 在i=0的情况下 交换轮数 为 length-1 内部循环次数为length-i-1 (3,2,1),每一次将最大数字推到末尾

package com.domain.var;

import java.util.Random;
import java.util.Scanner;

public class variabledemo {
    public static void main(String[] args) {
        // 冒泡排序
        int[] arr = {5, 2, 3, 1};
        
        // 定义轮次
        for (int i = 0; i < arr.length -1; i++) {
            // 定义排序换位次数
            for (int j = 0; j < arr.length - i -1; j++) {
                // 将最大数推到末尾 两两比较
                if(arr[j] > arr[j + 1]) {
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }

        // 输出结果
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + "\t");
        }

    }
}