请使用JAVA代码处理 IO练习:随机生成1000个[50,1000)的整数,按照每行10的方式,输出到文件中,并依次读出文件中每行的首个数字累计求和并输出。
时间: 2024-03-11 17:50:51 浏览: 63
用java实现,随机产生100个0到9的整数(这里以二维数组显示),并计算出每个数出现的次数
好的,以下是使用JAVA代码处理IO练习的解决方案:
```java
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
// 随机生成1000个[50, 1000)的整数
int[] nums = new int[1000];
for (int i = 0; i < 1000; i++) {
nums[i] = (int) (Math.random() * 950) + 50;
}
// 输出到文件中
File file = new File("nums.txt");
FileWriter writer = new FileWriter(file);
for (int i = 0; i < 1000; i++) {
writer.write(nums[i] + " ");
if ((i + 1) % 10 == 0) {
writer.write("\n");
}
}
writer.close();
// 依次读出文件中每行的首个数字累计求和并输出
FileReader reader = new FileReader(file);
int sum = 0;
for (int i = 0; i < 100; i++) {
int num = reader.read() - '0';
reader.skip(1);
sum += num;
}
reader.close();
System.out.println("累计求和:" + sum);
}
}
```
代码的具体实现过程如下:
1. 首先,我们使用一个长度为1000的整型数组`nums`,随机生成1000个[50, 1000)的整数。
2. 接着,我们创建一个名为`nums.txt`的文本文件,并使用`FileWriter`将生成的整数按照每行10个的方式输出到文件中。
3. 最后,我们使用`FileReader`依次读出文件中每行的首个数字,并累计求和并输出。需要注意的是,我们需要使用`reader.skip()`方法跳过每个数字后面的一个空格。
希望这个解决方案能够对您有所帮助!
阅读全文