帮忙么网 > JAVA > 当前页面

java代码,随机打乱一个数组

2025-02-21 NEW个对象

import java.util.concurrent.ThreadLocalRandom;


public class ShuffleArray {

    public static void main(String[] args) {

        int[] array = {1, 2, 3, 4, 5, 6, 7, 8, 9};

        shuffleArray(array);

        System.out.println(Arrays.toString(array));

    }


    public static void shuffleArray(int[] array) {

        for (int i = array.length - 1; i > 0; i--) {

            int j = ThreadLocalRandom.current().nextInt(i + 1);

            int temp = array[i];

            array[i] = array[j];

            array[j] = temp;

        }

    }

}


问题1:j不会越界吗?


next生成数在【0到i+1】之间。


问题2:代码的具体逻辑


生成一个【0到i+1】的之间的随机数,与【i】进行互换

上一篇:如何创建线程池?

下一篇:

相关文章

  • java代码,随机打乱一个数组

    问题1:j不会越界吗? next生成数在【0到i+1】之间。 问题2:代码的具体逻辑 生成一个【0到i+1】的之间的随机数,与【i】进行互换

    NEW个对象 2025-02-21

  • CMS与G1的区别?

    1、CMS是老年代回收器,可以配合其它Serial和ParNew收集器一起使用。 2、G1是全局范围的,不需要配合其它垃圾器使用

    NEW个对象 2025-01-09

  • 如何出现栈溢出?

    递归不断的调用自己,没有终止条件。

    NEW个对象 2025-02-11

推荐文章