java代码,随机打乱一个数组
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】进行互换
上一篇:如何创建线程池?
下一篇:dubbo支持多种协议:
相关文章
-
与第三方接口对接的注意事项与实现方案
在现代分布式系统与微服务架构中,系统之间的能力复用越来越依赖第三方接口(支付、短信、地图、风控、物流等)。
NEW个对象 2026-06-08
-
Spring 提供了哪些接口让用户自定义?详解 Spring 扩展点
Spring 提供了哪些接口让用户自定义?详解 Spring 扩展点
NEW个对象 2026-06-18
-
网关如何实现限流?
网关如何实现限流?
NEW个对象 2025-01-15