实现1-30随机排列 Java语言编写完整代码
时间: 2024-09-14 09:05:59 浏览: 38
在Java中实现1到30的随机排列,可以通过使用`java.util.Random`类来生成随机数,并使用数组或集合来存储这些随机数。然后通过随机打乱数组或集合中的元素来实现随机排列。以下是使用数组实现的示例代码:
```java
import java.util.Random;
public class RandomPermutation {
public static void main(String[] args) {
Random rand = new Random();
int[] numbers = new int[30];
// 填充数组
for (int i = 0; i < numbers.length; i++) {
numbers[i] = i + 1; // 生成1-30的数字
}
// 使用Fisher-Yates洗牌算法随机排列数组
for (int i = numbers.length - 1; i > 0; i--) {
// 生成一个随机索引
int j = rand.nextInt(i + 1);
// 交换numbers[i]和numbers[j]
int temp = numbers[i];
numbers[i] = numbers[j];
numbers[j] = temp;
}
// 打印随机排列的结果
for (int number : numbers) {
System.out.print(number + " ");
}
}
}
```
在这段代码中,我们首先创建了一个`Random`对象用于生成随机数。然后创建了一个长度为30的数组`numbers`,并使用一个循环将其初始化为1到30的整数。接着,使用Fisher-Yates洗牌算法来随机排列数组中的元素。最后,通过一个循环打印出随机排列后的数组。
阅读全文