欢迎访问宙启技术站
智能推送

编写一个Java函数来将数组中的元素随机排序

发布时间:2023-06-10 02:05:06

在Java中,可以使用标准库中的Random类来生成伪随机数来随机打乱数组中的元素。下面是一个将数组随机打乱的Java函数。

import java.util.Random;

public class ShuffleArray {
    public static void shuffle(int[] arr) {
        Random rand = new Random();
        for (int i = 0; i < arr.length - 1; i++) {
            int j = i + rand.nextInt(arr.length - i);
            int temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;
        }
    }
    
    public static void main(String[] args) {
        int[] arr = {1, 2, 3, 4, 5};
        shuffle(arr);
        for (int num : arr) {
            System.out.print(num + " ");
        }
    }
}

在这个函数中,我们使用了Random对象来生成随机数,并将它们用于交换数组中的元素。具体来说,我们使用rand.nextInt(n)方法来生成一个[0, n)之间的随机数j,然后将arr[i]和arr[j]交换位置。我们将i在循环中递增,直到最后一个元素的位置被确定。

上面的代码使用了一个示例数组{1, 2, 3, 4, 5}并打印了随机排序后的结果。输出可以是以下的任何一种:

3 4 1 5 2 
4 5 1 3 2 
5 2 3 1 4 
1 5 2 4 3 

这个函数可以用于任何类型的数组,只需要将类型从int[]改为你想要的类型,并适当地修改数组的初始化。