java 问题、随机产生100个整数(数值范围为100以内),使用文本I/O将数据写入num.txt文件,文件中的数据用空格符分隔。如果num.txt不存在,则创建该文件。然后从文件中读出数据并显示数据
时间: 2024-03-01 17:54:38 浏览: 162
好的,以下是Java代码实现:
```java
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) {
// 随机生成100个整数
Random random = new Random();
List<Integer> nums = new ArrayList<>();
for (int i = 0; i < 100; i++) {
nums.add(random.nextInt(100) + 1);
}
// 将数据写入num.txt文件
try (PrintWriter writer = new PrintWriter(new FileWriter("num.txt"))) {
for (int i = 0; i < nums.size(); i++) {
writer.print(nums.get(i));
if (i != nums.size() - 1) {
writer.print(" ");
}
}
} catch (IOException e) {
e.printStackTrace();
}
// 从文件中读出数据并显示
try (Scanner scanner = new Scanner(new File("num.txt"))) {
List<Integer> readNums = new ArrayList<>();
while (scanner.hasNextInt()) {
readNums.add(scanner.nextInt());
}
System.out.println(readNums);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
```
首先,使用Java的`Random`类生成100个1到100之间的随机整数,并将它们存入一个`List`中。
然后,使用`PrintWriter`将数据写入`num.txt`文件中。如果文件不存在,则会自动创建。注意,在写入整数后,需要加上一个空格符。
接着,使用`Scanner`从`num.txt`文件中读取数据,并将它们存入一个新的`List`中。最后,打印出读取的整数列表。
在Java中,需要注意的是,在使用`PrintWriter`和`Scanner`时,需要使用`try-with-resources`语句来自动关闭文件流。这样可以避免因忘记关闭文件流而导致的资源泄漏问题。
阅读全文