JAVA利用随机函数产生20个整数,按由小到大的顺序排列后写入文件中,然后从文件中读取整数并输出显示,分别用顺序文件和随机文件的读写形式进行编程测试
时间: 2023-12-10 18:40:14 浏览: 106
编程实现希尔、快速、堆、归并排序算法,随机产生10000个随机数存入磁盘文件,读取,并将不同排序方法的结果存入文件中(含报告)
5星 · 资源好评率100%
使用顺序文件的读写形式:
```java
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) {
// 产生20个随机数
Random random = new Random();
int[] nums = new int[20];
for (int i = 0; i < nums.length; i++) {
nums[i] = random.nextInt(100);
}
// 排序
Arrays.sort(nums);
// 写入文件
try {
FileWriter fw = new FileWriter("data.txt");
for (int i = 0; i < nums.length; i++) {
fw.write(nums[i] + "\n");
}
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
// 读取文件并输出
try {
FileReader fr = new FileReader("data.txt");
BufferedReader br = new BufferedReader(fr);
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
br.close();
fr.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
使用随机文件的读写形式:
```java
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) {
// 产生20个随机数
Random random = new Random();
int[] nums = new int[20];
for (int i = 0; i < nums.length; i++) {
nums[i] = random.nextInt(100);
}
// 排序
Arrays.sort(nums);
// 写入文件
try {
RandomAccessFile raf = new RandomAccessFile("data.bin", "rw");
for (int i = 0; i < nums.length; i++) {
raf.writeInt(nums[i]);
}
raf.close();
} catch (IOException e) {
e.printStackTrace();
}
// 读取文件并输出
try {
RandomAccessFile raf = new RandomAccessFile("data.bin", "r");
for (int i = 0; i < nums.length; i++) {
System.out.println(raf.readInt());
}
raf.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
阅读全文