通过Java基础技术while 、switch、面向对象技术、集合ArrayList、IO流等技术等完成以下学生管理系统V10。学生信息分别为:姓名nameString、年龄ageint、性别sexString、学号SIdLong、成绩gradedouble需求:1、点击添加学员根据提示录入学生信息校验录入学号信息是否存在如果存在不得再次录入;正确添加后提示添加成功并跳转到学生管理系统首页可以模拟
以下是一个基于Java基础技术、面向对象技术、集合(ArrayList)、IO流等技术的学生管理系统V1.0的示例实现:
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class StudentManagementSystem {
private List<Student> students;
private Scanner scanner;
public StudentManagementSystem() {
students = new ArrayList<>();
scanner = new Scanner(System.in);
}
public void start() {
boolean running = true;
while (running) {
System.out.println("学生管理系统");
System.out.println("1. 添加学员");
System.out.println("2. 删除学员");
System.out.println("3. 修改学员信息");
System.out.println("4. 显示所有学员信息");
System.out.println("5. 导入学员信息");
System.out.println("6. 导出学员信息");
System.out.println("7. 退出系统");
System.out.print("请选择操作:");
int choice = scanner.nextInt();
switch (choice) {
case 1:
addStudent();
break;
case 2:
deleteStudent();
break;
case 3:
modifyStudent();
break;
case 4:
showAllStudents();
break;
case 5:
importStudents();
break;
case 6:
exportStudents();
break;
case 7:
running = false;
break;
default:
System.out.println("无效操作,请重新选择。");
}
}
}
private void addStudent() {
System.out.println("添加学员");
System.out.print("姓名:");
String name = scanner.next();
System.out.print("年龄:");
int age = scanner.nextInt();
System.out.print("性别:");
String sex = scanner.next();
System.out.print("学号:");
long sid = scanner.nextLong();
System.out.print("成绩:");
double grade = scanner.nextDouble();
if (findStudent(sid) != null) {
System.out.println("学号已存在,无法添加。");
return;
}
Student student = new Student(name, age, sex, sid, grade);
students.add(student);
System.out.println("添加成功。");
}
private void deleteStudent() {
System.out.println("删除学员");
System.out.print("学号:");
long sid = scanner.nextLong();
Student student = findStudent(sid);
if (student == null) {
System.out.println("学号不存在,无法删除。");
return;
}
students.remove(student);
System.out.println("删除成功。");
}
private void modifyStudent() {
System.out.println("修改学员信息");
System.out.print("学号:");
long sid = scanner.nextLong();
Student student = findStudent(sid);
if (student == null) {
System.out.println("学号不存在,无法修改。");
return;
}
System.out.print("姓名(原始值:" + student.getName() + "):");
String name = scanner.next();
System.out.print("年龄(原始值:" + student.getAge() + "):");
int age = scanner.nextInt();
System.out.print("性别(原始值:" + student.getSex() + "):");
String sex = scanner.next();
System.out.print("成绩(原始值:" + student.getGrade() + "):");
double grade = scanner.nextDouble();
student.setName(name);
student.setAge(age);
student.setSex(sex);
student.setGrade(grade);
System.out.println("修改成功。");
}
private void showAllStudents() {
System.out.println("所有学员信息");
System.out.println("姓名\t年龄\t性别\t学号\t成绩");
for (Student student : students) {
System.out.println(student.getName() + "\t" + student.getAge() + "\t" +
student.getSex() + "\t" + student.getSid() + "\t" + student.getGrade());
}
}
private void importStudents() {
System.out.println("导入学员信息");
System.out.print("请输入文件路径:");
String filePath = scanner.next();
try (ObjectInputStream ois = new ObjectInputStream(new FileInputStream(filePath))) {
students = (List<Student>) ois.readObject();
System.out.println("导入成功。");
} catch (IOException | ClassNotFoundException e) {
System.out.println("导入失败:" + e.getMessage());
}
}
private void exportStudents() {
System.out.println("导出学员信息");
System.out.print("请输入文件路径:");
String filePath = scanner.next();
try (ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(filePath))) {
oos.writeObject(students);
System.out.println("导出成功。");
} catch (IOException e) {
System.out.println("导出失败:" + e.getMessage());
}
}
private Student findStudent(long sid) {
for (Student student : students) {
if (student.getSid() == sid) {
return student;
}
}
return null;
}
public static void main(String[] args) {
StudentManagementSystem system = new StudentManagementSystem();
system.start();
}
}
class Student implements Serializable {
private String name;
private int age;
private String sex;
private long sid;
private double grade;
public Student(String name, int age, String sex, long sid, double grade) {
this.name = name;
this.age = age;
this.sex = sex;
this.sid = sid;
this.grade = grade;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public long getSid() {
return sid;
}
public void setSid(long sid) {
this.sid = sid;
}
public double getGrade() {
return grade;
}
public void setGrade(double grade) {
this.grade = grade;
}
}
此示例实现了一个简单的学生管理系统,提供了添加学生、删除学生、修改学生信息、显示所有学生信息、导入学生信息和导出学生信息等功能。可以根据需要进行扩展和修改
原文地址: http://www.cveoy.top/t/topic/iv5S 著作权归作者所有。请勿转载和采集!