




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
7.3实现一个简单的学生管理系统,能支持学生数据(Student)的显示、增加、修改和删除等操作,学生信息包括学号、姓名、性别、专业等。具体要求如下:学生数据按对象序列化写入student.dat文件程序启动后,从student.dat文件读取学生对象存入ArrayList中;增加学生数据时将学生对象Student存入ArrayList,按保存后再写入student.dat;删除学生必须输入学生的学号;修改学生必须输入学号,然后输入姓名、性别和专业进行修改;保存时将当前ArrayList中的所有学生对象写入student.dat;退出前也要将当前ArrayList中的所有学生对象写入student.dat;设计一个操作菜单,包括“增加”、“修改”、“删除”、“显示”、“保存”、“退出”等6个选项。import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.io.Serializable;import java.io.File;import java.util.ArrayList;import java.util.List;import java.util.Scanner;class Student implements Serializable int id; String name; String sex; String zuanYe; public Student() id = 0; name = wu; sex = 男; zuanYe = English; public Student(int id, String name, String sex, String zuanYe) this.id = id; = name; this.sex = sex; this.zuanYe = zuanYe; public void output() System.out.print(学号: + id); System.out.print(,姓名: + name); System.out.print(,性别: + sex); System.out.println(,专业: + zuanYe); public class StuInfoSystem List list = new ArrayList(); public void addList() / 将学生信息添加到ArrayList数组中去 int id; String name, sex, zuanYe; Scanner sc = new Scanner(System.in); System.out.println(请输入学生信息:); System.out.println(学号:); id = sc.nextInt(); System.out.println(姓名:); name = sc.next(); System.out.println(性别:); sex = sc.next(); System.out.println(专业:); zuanYe = sc.next(); Student s = new Student(id, name, sex, zuanYe); /s.Output(); list.add(s); public void addFile() / 将ArrayList数组中的信息保存到文件 try ObjectOutputStream f = new ObjectOutputStream(new FileOutputStream(student.txt); for (int n = 0; n 0&f!= null&(s=(Student)f.readObject()!=null) /s.output(); /输出学生信息 list.add(s); f.close(); catch (Exception e) System.err.println(e.getMessage(); public void outStudent(int id) / 输出某个学生的信息 boolean m_boolean = false; for (int i = 0; i 0) for (int i = 0; i list.size(); i+) Student s = (Student) list.get(i); s.output(); else System.out.println(没有任何学生信息!); void changeStudent(int id) / 修改学生信息 Scanner sc = new Scanner(System.in); String stuInfo=; boolean m_boolean = false; for (int i = 0; i list.size(); i+) Student s = (Student) list.get(i); if (s.id = id) System.out.println(请输入修改的姓名:); if(!(stuInfo=sc.next().trim().equals() = stuInfo; System.out.println(请输入修改的性别:); if(!(stuInfo=sc.next().trim().equals() s.sex = stuInfo; System.out.println(请输入修改的专业:); if(!(stuInfo=sc.next().trim().equals() s.zuanYe = stuInfo; list.set(i, s); System.out.println(修改成功。); m_boolean = true; break; if (!m_boolean) System.out.println(没有该同学。); void moveStudent(int id) / 删除某个学生信息 boolean m_boolean = false; for (int i = 0; i list.size(); i+) Student s = (Student) list.get(i); if (s.id = id) list.remove(i); System.out.println(删除成功。); m_boolean = true; break; if (!m_boolean) System.out.println(没有该同学。); public static void main(String args) int select, id; boolean flag = true; String name, zuanYe; String sex; Scanner sc = new Scanner(System.in); StuInfoSystem t = new StuInfoSystem(); t.inputList(); System.out.println(请选择1-6的菜单); while (flag) System.out.println(1.增加学生 2.修改学生信息 3.删除学生 4.查询学生信息 5.显示所有学生信息 6.保存修改 7.退出系统); try select = Integer.parseInt(sc.next(); switch (select) case 1: t.addList(); break; case 2: System.out.println(请输入要修改学生的ID:); id = sc.nextInt(); t.changeStudent(id); break; case 3: System.out.println(请输入要删除学生的ID:); id = sc.nextInt(); t.moveStudent(id); break; case 4: System.out.println(请输入要查看学生的ID:); id = sc.nextInt(); t.outStudent(id); break; case 5: &, nbsp; t.outAllStudent(); break; case 6: t.addFile(); System.ou
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度智能设备安装与销售一体化服务合同范本
- 2025年度农业科技成果转化与应用推广合同
- 2025年新型城镇化建设中电缆敷设施工及售后服务合同
- 2025年度航天科技咨询服务合同
- 2025年度新型生态挡土墙施工劳务合同模板
- 2025保密协议培训与知识产权战略规划合同
- 2025二手房暂不过户房屋租赁与转租合同范本
- 2025版商厅出租合同附租金递增条款
- 2025贷款合同范本旅游产业开发贷款合作
- 2025版实习岗位需求实习合同范本
- 登革热诊疗方案(2024年版)
- 《广东省花生全程机械化栽培技术规程》
- 班组交接班制度模版(2篇)
- 护理老年科小讲课
- 《电子收费系统E》课件
- 外科微创手术管理制度
- 2024年全国《考评员》专业技能鉴定考试题库与答案
- 原材料不合格品处理流程
- 秀米推文培训课件
- 阜外体外循环手册
- 天津市红桥区2024-2025学年七年级上学期10月期中考试语文试题
评论
0/150
提交评论