用java创建学生类(学号,姓名),键盘输入N个学生信息,将学生信息保存到List中,将输入的N个学生信息保存到文件中,在从文件中查询所有学生信息输出在控制台上
时间: 2024-04-21 12:27:31 浏览: 13
好的,请看下面的代码示例:
```java
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
class Student {
private String studentId;
private String name;
public Student(String studentId, String name) {
this.studentId = studentId;
this.name = name;
}
public String getStudentId() {
return studentId;
}
public String getName() {
return name;
}
}
public class Main {
public static void main(String[] args) {
List<Student> studentList = new ArrayList<>();
// 从键盘输入学生信息
Scanner scanner = new Scanner(System.in);
System.out.print("请输入学生数量:");
int numStudents = scanner.nextInt();
for (int i = 0; i < numStudents; i++) {
System.out.println("请输入第 " + (i + 1) + " 个学生的学号和姓名:");
String studentId = scanner.next();
String name = scanner.next();
Student student = new Student(studentId, name);
studentList.add(student);
}
// 将学生信息保存到文件中
try {
FileWriter writer = new FileWriter("students.txt");
for (Student student : studentList) {
writer.write(student.getStudentId() + " " + student.getName() + "\n");
}
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
// 从文件中查询所有学生信息并输出到控制台
try {
BufferedReader reader = new BufferedReader(new FileReader("students.txt"));
String line;
while ((line = reader.readLine()) != null) {
String[] info = line.split(" ");
String studentId = info[0];
String name = info[1];
System.out.println("学号:" + studentId + ",姓名:" + name);
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
请注意,这段代码会在当前目录创建一个名为 "students.txt" 的文件,用于保存学生信息。如果该文件已存在,则会覆盖原有内容。同时,从键盘输入的学生信息和从文件中查询的学生信息会输出在控制台上。
你可以根据自己的需求,对代码进行修改和优化。