随机从1到100000中间随机取出100个不同的质数,然后按从小到大的顺序排列 需要用到Random随机类 nextInt()方法 质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。 还需要Collections.sort(list) 将数字从小到大排序
时间: 2024-01-22 08:17:36 浏览: 70
好的,那我们可以先写一个判断质数的函数,在生成100个不同的质数,然后再排序输出。代码如下:
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
int count = 0;
List<Integer> list = new ArrayList<>(); // 用于存放质数
Random rand = new Random();
while (count < 100) {
int num = rand.nextInt(100000) + 1; // 随机生成一个1~100000的自然数
if (isPrime(num) && !list.contains(num)) { // 判断是否为质数且是否已经存在于list中
list.add(num); // 若是则添加到list中
count++;
}
}
Collections.sort(list); // 对list进行排序
for (int i = 0; i < list.size(); i++) {
System.out.print(list.get(i) + " "); // 输出排好序的100个质数
}
}
// 判断一个数是否为质数
public static boolean isPrime(int num) {
if (num <= 1) {
return false;
}
for (int i = 2; i <= Math.sqrt(num); i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
}
```
希望能帮到你!
阅读全文