创建一个项目并实现下面的方法和一个main方法。 1.编写一个用给定区间内不同的随机实数填补一个实数列表的程序。该程序的参数如下:一个实数的数组列表(我们填充这个数组),一个整数,表示将生成多少个数字,一个实数,表示下界,个实数,表示上界。 2编写一个函数,它返回一个对数值,并决定给定区间内是否存在任何数字。该函数的参数如下:如果上界低于下界,或者数组列表为空,则在进程开始时打印错误消息,并立即完成函数的工作。一个实数的数组列表(我们在这里搜索),一个实数,表示下界,一个实数,表示上界。 3.编写一个从给定数组列表中返回最小数字的函数!该函数的参数如下:一个实数的数组列表(我们在这里搜索)。如果数组列表为空,在进程开始时打印错误消息,并立即完成函数的工作! 4在主程序(main方法)中,从用户那里读取一个整数和两个实数,调用实现的方法并打印出它们的结果,同时打印出生成的数字。
时间: 2024-02-24 20:58:01 浏览: 20
好的,以下是实现你所需要的程序:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
List<Double> list = new ArrayList<>();
System.out.print("请输入要生成的随机实数的个数:");
int n = scanner.nextInt();
System.out.print("请输入下界:");
double lowerBound = scanner.nextDouble();
System.out.print("请输入上界:");
double upperBound = scanner.nextDouble();
fillListWithRandomNumbers(list, n, lowerBound, upperBound);
System.out.println("生成的随机实数为:" + list);
System.out.print("请输入要搜索的下界:");
double searchLowerBound = scanner.nextDouble();
System.out.print("请输入要搜索的上界:");
double searchUpperBound = scanner.nextDouble();
boolean exists = doesNumberExistInList(list, searchLowerBound, searchUpperBound);
if (exists) {
System.out.println("给定区间内存在数字");
} else {
System.out.println("给定区间内不存在数字");
}
double min = findMinimumInList(list);
System.out.println("数组列表中的最小数字为:" + min);
}
public static void fillListWithRandomNumbers(List<Double> list, int n, double lowerBound, double upperBound) {
Random random = new Random();
for (int i = 0; i < n; i++) {
double randomNumber = lowerBound + (upperBound - lowerBound) * random.nextDouble();
list.add(randomNumber);
}
}
public static boolean doesNumberExistInList(List<Double> list, double lowerBound, double upperBound) {
if (upperBound < lowerBound || list.isEmpty()) {
System.out.println("错误:上界低于下界或数组列表为空");
return false;
}
for (double number : list) {
if (number >= lowerBound && number <= upperBound) {
return true;
}
}
return false;
}
public static double findMinimumInList(List<Double> list) {
if (list.isEmpty()) {
System.out.println("错误:数组列表为空");
return -1;
}
double min = list.get(0);
for (int i = 1; i < list.size(); i++) {
if (list.get(i) < min) {
min = list.get(i);
}
}
return min;
}
}
```
这个程序实现了你提供的四个方法,并在主程序中调用了这些方法。在主程序中,我们首先从用户那里读取了要生成的随机实数的个数,下界和上界。接下来,我们调用`fillListWithRandomNumbers()`方法来生成随机实数并将它们添加到列表中。然后,我们打印出生成的数字。
接下来,我们从用户那里读取要搜索的下界和上界,并调用`doesNumberExistInList()`方法来确定是否存在给定区间内的数字。如果存在,我们打印出一条消息。否则,我们打印出另一条消息。
最后,我们调用`findMinimumInList()`方法来查找列表中的最小数字,并打印出结果。