用java 创建文件number.txt, 里面存放多个整数。 2 读取该文件里面的数据,并统计平均值,最 大値,最小値。 3. 将统计的信息及数据排序后 写入result.txt 中。
时间: 2024-02-19 19:58:35 浏览: 66
好的,以下是对应的 Java 代码实现:
```java
import java.io.*;
import java.util.*;
public class ProcessNumbers {
public static void main(String[] args) {
// 读取 number.txt 文件中的整数列表
List<Integer> numbers = new ArrayList<>();
try (Scanner scanner = new Scanner(new File("number.txt"))) {
while (scanner.hasNextInt()) {
numbers.add(scanner.nextInt());
}
} catch (FileNotFoundException e) {
System.err.println("File not found: number.txt");
System.exit(1);
}
// 统计平均值、最大值、最小值
double average = numbers.stream().mapToInt(Integer::intValue).average().orElse(0.0);
int maxNum = Collections.max(numbers);
int minNum = Collections.min(numbers);
// 将统计信息和排序后的数据写入 result.txt 文件中
try (PrintWriter writer = new PrintWriter(new FileWriter("result.txt"))) {
writer.printf("平均值:%f\n", average);
writer.printf("最大值:%d\n", maxNum);
writer.printf("最小值:%d\n", minNum);
writer.println("排序后的数据:");
Collections.sort(numbers);
for (int num : numbers) {
writer.println(num);
}
} catch (IOException e) {
System.err.println("Failed to write to result.txt");
System.exit(1);
}
}
}
```
你可以将这段代码保存到一个 Java 文件中,比如叫做 `ProcessNumbers.java`,然后在命令行中执行 `javac ProcessNumbers.java` 编译,再执行 `java ProcessNumbers` 即可运行。注意,这段代码假设 `number.txt` 文件中每行只有一个整数。如果实际情况不是这样,你需要根据实际情况进行调整。
阅读全文