ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:32.86KB ,
资源ID:9248831      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9248831.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(java语言学生信息管理系统.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

java语言学生信息管理系统.docx

1、java语言学生信息管理系统 学生信息管理系统开发与设计java课程设计报告目录一、概要设计3二、程序整体设计说明.3三、程序部分源代码及注释.4四、测试结果.14五、设计心得15六、致 谢15七、参考文献15 一、概要设计 由于学生信息的冗长与繁琐,所以它的管理问题带来的麻烦和不方便也随之而来,所以开发一个合适学校的、便于管理学生信息的管理系统是十分必要的。 学生信息管理系统是对学生的基本信息进行管理,主要包括显示、查询、添加和删除学生的基本信息,方便管理人员对学生基本信息进行查询,排序等操作,从而实现学生信息管理的自动化与计算机化。本课题将实现一个简化的学生信息管理系统。二、程序的整体设计

2、(1)学生基本信息的录入和保存:在链表中的适当位置插入一个学生信息节点,一次添加一条学生信息(添加内容包含学号、姓名、年龄),如果添加的学号已经在文件中存在,则不能添加到文件中去,应显示错误提示语;如果添加成功,则显示成功提示语。添加操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。(2)显示学生信息:此功能是显示一个学生信息节点中的信息,并在屏幕上显示出来。(3)按学号查找学生信息:按学号查询学生信息,要求显示 文件 中 与 用户输入的学号 相匹配的学生信息,要求显示学号、姓名、年龄等字段,如果文件中没有学生信息,则显示提示语。查询操作完毕后,应该询问用户是否

3、继续执行此操作。如果用户不继续,则退回到程序初始界面。(4)按姓名查找学生信息:按姓名查询学生信息,要求显示 文件 中 与 用户输入的学号 相匹配的学生信息,要求显示学号、姓名、年龄等字段,如果文件中没有学生信息,则显示提示语。查询操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。(5)添加学生信息添加学生信息中的某一项信息,一次更新一条学生信息(更新内容包含学号、姓名、年龄等字段值),如果更新的学号在文件中不存在,则不能更新,应该显示错误提示语;如果更新成功,则显示成功提示语。更新操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面

4、。(6)删除学生信息: 进入该项功能界面后,删除学生信息,一次删除一条学生信息。 (7)退出系统,结束任务。三、程序部分源代码及注释 import java.io.IOException;import java.util.ArrayList;import java.util.Collections;import java.util.List;import java.util.Scanner;public class StudentManageSystem / StudentManager中提供的操作菜单 public static void showMenus() String format

5、= %sn; System.out.println(-功能菜单-); System.out.printf(format, 0. 退出管理); System.out.printf(format, 1. 显示学生); System.out.printf(format, 2. 查询学生); System.out.printf(format, 3. 添加学生); System.out.printf(format, 4. 删除学生); System.out.printf(format, 5. 功能菜单); System.out.println(-结束-); System.out.println(); /

6、 管理学生 public void manageStudents() throws IOException Scanner scanner = new Scanner(System.in); StudentDao sd = new StudentDao(); StudentService ss = new StudentService(sd, scanner); showMenus(); int op = -1; while (op != 0) System.in.skip(System.in.available(); System.out.print(输入菜单编号: ); op = scan

7、ner.nextInt(); scanner.nextLine(); / 吃掉输入菜单编号后无效的回车字符 try switch (op) case 0: break; case 1: ss.showStudents(); break; case 2: ss.findStudent(); break; case 3: ss.addStudent(); break; case 4: ss.removeStudent(); break; case 5: showMenus(); break; default: System.out.println(没有提供此项操作n); catch (Except

8、ion e) System.out.println(t + e.getMessage() + n); public static void main(String args) throws IOException StudentManageSystem sm = new StudentManageSystem(); sm.manageStudents(); class StudentService private StudentDao studentDao; private Scanner scanner; public StudentService(StudentDao studentDao

9、, Scanner scanner) this.studentDao = studentDao; this.scanner = scanner; / 添加学生 public void addStudent() System.out.print(输入学生资料进行添加: ); / name|age String info = scanner.nextLine(); Student s = Student.buildStudent(info); if (studentDao.findStudent(s.getName() != null) throw new RuntimeException(此学生

10、信息已经存在); studentDao.addStudent(s); System.out.println(t添加成功n); public void removeStudent() System.out.print(输入学生姓名进行删除: ); String name = scanner.nextLine(); Student s = studentDao.findStudent(name); if (s = null) System.out.println(t查无此学生); else studentDao.removeStudent(s); System.out.println(t已经删除学

11、生: + s); System.out.println(); / 查找学生 public void findStudent() System.out.print(输入学生姓名进行查询: ); String name = scanner.nextLine(); Student s = studentDao.findStudent(name); if (s = null) System.out.println(查无此学生); else System.out.println(t搜索查找到的学生: + s); System.out.println(); / 显示已经有的学生信息 public void

12、 showStudents() List students = studentDao.getStudents(); if (students.size() = 0) System.out.println(列表中还没有任何学生); else System.out.println(=所有学生信息=); for (Student s : students) System.out.println(t + s); System.out.println(); / 对学生数据进行执久化操作class StudentDao private List students; public StudentDao()

13、students = new ArrayList(); / 添加学生 public void addStudent(Student student) students.add(student); / 删除学生 public void removeStudent(Student student) students.remove(student); / 使用学生的名字查找进行查找 public Student findStudent(String name) for (Student s : students) if (s.getName().equals(name) return s; retu

14、rn null; / 返回学生列表的视图,不可修改 public List getStudents() return Collections.unmodifiableList(students); class Student private String name; private int age; public Student() public Student(String name, int age) this.name = name; this.age = age; public String getName() return name; public void setName(Stri

15、ng name) this.name = name; / Info format: name|age public static Student buildStudent(String studentInfo) if (!studentInfo.matches(w+|d+) throw new RuntimeException( The student informations format should be name|age without quote); String infos = studentInfo.split(|); String name = infos0.trim(); i

16、nt age = Integer.parseInt(infos1); return new Student(name, age); Override public String toString() return String.format(Name:%s, Age:%d, name, age); 四、测试结果 在调试的过程中,出现了许多错误,现将几类有代表性的错误列举如下:(1) 原因:在引用用户变量与定义时的不一致,第二个字母大写了。 如何解决:将 studentService(sd, scanner)改为 StudentService(sd, scanner) (2) 原因 : Over

17、ride需要 如何解决:在其后加上(3) 原因:在判断时的比较符写成了赋值号 如何解决:将“=”改成“=”(4) 原因:“ ”是在汉语状态写入的 如何解决:改为英语状态输入 (5) 原因:少写了一个大花括号 如何解决:补上一个后半大花括号五、设计心得 通过此次课程设计,将我本学期所学的JAVA知识得到巩固和应用,在设计的过程中我遇到了很到问题,不过在老师和同学们的帮助和自己的思考下还是很好的完成了。这此课程设计还让我懂得了写程序不能闭门造车,要努力拓宽知识面,开阔视野,拓展思维。它还让我学会了在网上查阅那些无限的资料。六、致 谢在本次Java课程设计中,首先要感谢我的指导老师*老师教给了我很多的Java的编程知识,编程思想,还有要感谢我的同学,是他们在我遇到困难时给了我指导

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1