java随机生成1-18之间不重复的十个数
时间: 2024-05-06 12:19:59 浏览: 144
可以使用Java的Random类和Set集合来实现随机生成不重复的十个数:
```java
import java.util.*;
public class RandomNumbers {
public static void main(String[] args) {
Random random = new Random();
Set<Integer> set = new HashSet<>();
while (set.size() < 10) { // 生成10个不重复的数
int num = random.nextInt(18) + 1; // 生成1-18之间的随机数
set.add(num);
}
System.out.println(set);
}
}
```
输出结果可能类似于:[1, 3, 6, 7, 10, 11, 13, 15, 16, 18]。
相关问题
java随机生成0-18之间不重复的十个数
以下是一种实现方式:
```java
import java.util.*;
public class RandomNumbers {
public static void main(String[] args) {
Set<Integer> numbers = new HashSet<>();
Random random = new Random();
while (numbers.size() < 10) {
int number = random.nextInt(19); // 生成0-18之间的随机数
if (!numbers.contains(number)) {
numbers.add(number);
}
}
System.out.println("随机生成的10个不重复的数为:");
for (int number : numbers) {
System.out.print(number + " ");
}
}
}
```
运行结果可能如下:
```
随机生成的10个不重复的数为:
16 3 14 17 0 9 10 2 11 18
```
java随机生成0-18之间不重复的十个数,并且按照大小排序
以下是一个可能的实现:
```java
import java.util.*;
public class RandomNumberGenerator {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
for (int i = 0; i <= 18; i++) {
list.add(i);
}
Collections.shuffle(list);
List<Integer> subList = list.subList(0, 10);
Collections.sort(subList);
System.out.println(subList);
}
}
```
首先,我们创建一个 `ArrayList` 包含所有的数字。然后使用 `Collections.shuffle` 方法打乱列表中的元素顺序。接着,我们使用 `subList` 方法从打乱后的列表中选择前十个数字,并将它们存储在一个新的列表中。最后,我们使用 `Collections.sort` 方法按照大小排序,并打印出结果。
阅读全文