1.创建学生类

package studentManager;public class Student {//定义成员变量private String num;//学号private String name;//姓名private String age;//年龄private String address;//居住地//构造无参和有参方法(alt+insert键)public Student() {}public Student(String num, String name, String age, String address) {this.num = num;this.name = name;this.age = age;this.address = address;}//构造set和get方法(alt+insert键)public String getNum() {return num;}public void setNum(String num) {this.num = num;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getAge() {return age;}public void setAge(String age) {this.age = age;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}
}

2.创建主函数main()类,编写主要功能实现代码

package studentManager;import java.util.ArrayList;
import java.util.Scanner;public class StudentManager {public static void main(String[] args) {//创建学生集合ArrayList<Student> array = new ArrayList<Student>();//循环返回主界面while (true) {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("------ 请输入你的选择:");//System.out.println("-------------------------------");//scanner键盘录入Scanner sc = new Scanner(System.in);String line = sc.nextLine();switch (line) {case "1"://System.out.println("添加");addStudent(array);System.out.println("添加成功!");break;case "2":System.out.println("删除");deleteStudent(array);break;case "3":System.out.println("修改");changeStudent(array);break;case "4":System.out.println("查看");//lookStudent(array);findAllStudent(array);break;case "5":System.out.println("谢谢你的使用!");//break;System.exit(0);}}}//定义 添加学生 方法/*两个明确:参数:ArrayList<Student> array返回值:void*/
/*    public static void addStudent(ArrayList<Student> array) {//键盘输入学生信息Scanner sc = new Scanner(System.in);System.out.println("请输入学生学号:");String num = sc.nextLine();System.out.println("请输入学生姓名:");String name = sc.nextLine();System.out.println("请输入学生年龄:");String age = sc.nextLine();System.out.println("请输入学生地址:");String address = sc.nextLine();//创建学生对象Student s = new Student();s.setNum(num);s.setName(name);s.setAge(age);s.setAddress(address);//学生对象加入集合array.add(s);}*///添加学生升级版public static void addStudent(ArrayList<Student> array) {//为了学号num可以在while循环外可以用到所以定义在while外String num;Scanner sc = new Scanner(System.in);//用while循环保证输入重复后能回到输入学号while (true) {//键盘输入学生信息System.out.println("请输入学生学号:");num = sc.nextLine();//判断学号是否已经存在if (isUse(array, num) == true) {System.out.println("该学号已存在,请重新输入:");}else{break;}}System.out.println("请输入学生姓名:");String name = sc.nextLine();System.out.println("请输入学生年龄:");String age = sc.nextLine();System.out.println("请输入学生地址:");String address = sc.nextLine();//创建学生对象Student s = new Student();s.setNum(num);s.setName(name);s.setAge(age);s.setAddress(address);//学生对象加入集合array.add(s);}//定义添加学生学号是否重复方法/*两个明确参数:ArrayList<Student> array返回值:boolean*/public static boolean isUse(ArrayList<Student> array,String num){//如果与集合中某学生学号相同返回true,否则返回falseboolean flag = false;for(int i = 0;i<array.size();i++){Student s = array.get(i);if(s.getNum().equals(num)){flag = true;break;}}return flag;}//定义 删除学生 方法
/*    public static void deleteStudent(ArrayList<Student> array) {Scanner sc = new Scanner(System.in);System.out.println("请输入要删除学生的学号:");String num = sc.nextLine();//if判断是否存在该学生for (int i = 0; i <= array.size(); i++) {Student s = array.get(i);if (s.getNum().equals(num)) {//遍历集合找到该学生并删除array.remove(i);System.out.println("删除成功!");break;}}}*///删除学生升级版public static void deleteStudent(ArrayList<Student> array) {Scanner sc = new Scanner(System.in);System.out.println("请输入要删除的学生学号:");String num = sc.nextLine();//定义index值为-1,当匹配到所给学号就修改index值,否则就是找不到该学生int index = -1;for (int i = 0; i < array.size(); i++) {Student s = array.get(i);if (s.getNum().equals(num)) {//  int index =i;index = i;break;}}if (index == -1) {System.out.println("未找到该学生!");}//若index不等于-1,则说明找到了该学生,用index作i进行删除操作else {array.remove(index);System.out.println("删除成功!");//return;}}//定义 修改学生 方法
/*    public static void changeStudent(ArrayList<Student> array) {//录入要修改学生的学号Scanner sc = new Scanner(System.in);System.out.println("请输入你要修改的学生学号:");String num = sc.nextLine();//录入修改的信息System.out.println("请输入修改后的学生学号:");String num1 = sc.nextLine();System.out.println("请输入修改后的学生姓名:");String name1 = sc.nextLine();System.out.println("请输入修改后的学生年龄:");String age1 = sc.nextLine();System.out.println("请输入修改后的学生居住地:");String address1 = sc.nextLine();//创建学生对象接收录入的修改数据Student s = new Student();s.setNum(num1);s.setName(name1);s.setAge(age1);s.setAddress(address1);//遍历找到该学生s1for (int i = 0; i <= array.size(); i++) {Student s1 = array.get(i);if (s1.getNum().equals(num)) {//把接收到的数据对象s传给array中的iarray.set(i, s);break;}}System.out.println("修改成功!");}*///修改学生升级版public static void changeStudent(ArrayList<Student> array) {//录入要修改学生的学号Scanner sc = new Scanner(System.in);System.out.println("请输入你要修改的学生学号:");String num = sc.nextLine();int index = -1;for (int i = 0; i < array.size(); i++) {Student s = array.get(i);if (s.getNum().equals(num)) {index = i;break;}}if (index == -1) {System.out.println("该学生不存在!");} else {//录入修改的信息System.out.println("请输入修改后的学生学号:");String num1 = sc.nextLine();System.out.println("请输入修改后的学生姓名:");String name1 = sc.nextLine();System.out.println("请输入修改后的学生年龄:");String age1 = sc.nextLine();System.out.println("请输入修改后的学生居住地:");String address1 = sc.nextLine();//创建学生对象接收录入的修改数据Student s = new Student();s.setNum(num1);s.setName(name1);s.setAge(age1);s.setAddress(address1);//遍历找到该学生s1for (int i = 0; i <= array.size(); i++) {Student s1 = array.get(i);if (s1.getNum().equals(num)) {//把接收到的数据对象s传给array中的iarray.set(i, s);break;}}System.out.println("修改成功!");}}//定义 查看学生 方法
/*    public static void lookStudent(ArrayList<Student> array){System.out.println("学号\t\t\t姓名\t\t年龄\t\t居住地");for (int i = 0; i < array.size(); i++) {Student s = array.get(i);System.out.println(s.getNum()+"\t\t"+s.getName() +"\t\t"+ s.getAge()+"岁\t"+s.getAddress());}}*///定义 查看学生升级版 方法public static void findAllStudent(ArrayList<Student> array) {//判断集合中是否有数据,无弹出相应信息if (array.size() == 0) {System.out.println("列表中尚未录入学生信息。");//让程序不再往下执行return;} else {System.out.println("学号\t\t\t姓名\t\t年龄\t\t居住地");for (int i = 0; i < array.size(); i++) {Student s = array.get(i);System.out.println(s.getNum() + "\t\t" + s.getName() + "\t\t" + s.getAge() + "岁\t" + s.getAddress());}}}
}

基于IDEA的Java学生管理系统相关推荐

  1. 制作基于springboot的简易学生管理系统(详细)

    制作基于springboot的简易学生管理系统(详细) 基于书本与百度创作,内容简易,请多多指教( ̄▽ ̄)/ 设计一个简易学生管理系统 所需环境 创建一个springboot项目 设计数据库 配置Gr ...

  2. java学生管理系统(简易)(三)---教师端的登录主页面

    教师端的登录界面就比较清晰了...可能就我自己认为,以为前面写的太乱了...蒙圈 // 学会了先布局,在完善部分代码,嘤嘤嘤...之前那个学生的感觉凉凉啊~ // 有些代码中可能有main函数,有些没 ...

  3. php做一个学生管理系统,基于php技术的学生管理系统实现方法

    标签和路由Route::get("dologin","Admin\\login@dologin")连接控制器loginController并加载dologin( ...

  4. java考勤管理系统源码java学生考勤请假系统java学生考勤管理系统 java考勤系统java学生信息管理系统java学生管理系统

    java考勤管理系统源码java学生考勤请假系统java学生考勤管理系统 java考勤系统java学生信息管理系统java学生管理系统 public Swingtest002() {// 设置标题se ...

  5. 【无标题】基于javaweb、java的管理系统毕设计与实现怎样选题思路分享

    首先简单介绍一下自己,,MY IS一名勤奋的程序员JAVA 开发工程师,目前在一家 IT 互联网公司,主要负责公司搬砖的后端开发工作,除了我,团队里都是多年开发经验的老师,累积丰富开发经验,擅长JAV ...

  6. 第一篇博客,java学生管理系统(挑战全网最全)

    java学生信息管理系统,(课设必备),附有源码和简版链接 博主虽然技术不高,但是系统写的真的是没话说,留着开学java课设用了. 直接转载链接了,查看系统入口 https://blog.csdn.n ...

  7. 学生管理系统c#语言代码,基于C#语言的学生管理系统的设计(ASP.NET2.0)

    摘  要 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用.学生管理系统是学校管理中不可少的一部分.而基于B/S架构的学生管 ...

  8. Java—学生管理系统使用文件永久存储

    学生管理系统 上一次使用的集合只能对学生信息进行临时存储,关闭程序时数据就会消失,这次新增了文件存储,达到对学生信息的永久记录,首先在上次代码的基础上,增加了两个方法,一个是从学生文件读取信息到集合中 ...

  9. java学生管理系统(swing) (没用数据库,附源码)

    如果有需要带数据库的,请小伙伴移步至:java+mysql学生管理系统(附源码,无套路) 事先声明: 程序简易,只是为了记录学习过程,大佬们勿喷,要实在忍不住,麻烦各位大佬轻点喷就是! 但是如果有任何 ...

最新文章

  1. [Wordpress]wp_dropdown_categories() 添加自定义的attribute(属性)
  2. android组件通讯 Intent- 系统标准的Activity Action应用
  3. 通过Java 8流使用Oracle AQ
  4. redis的zset的底层实现_Redis(三)--- Redis的五大数据类型的底层实现
  5. python编码和解码_Python中的编码与解码(转)
  6. Delphi 7下IGDIPlus库的使用
  7. Oracle命令--如何查看oracle中创建的所有目录
  8. 关于ggplot2的一些用法
  9. 20145234黄斐《信息安全系统设计基础》第十周
  10. 2012年3月份工作总结 ~ 之 ~ PDF 作业对应 (虽然这个作业没有什么意思,但是非常值得总结)
  11. Select的onchange事件
  12. completionService
  13. 推荐一个强大的串口监控软件(免费)
  14. 极化码理论及算法研究3-Arikan原版论文学习总结
  15. Electron开发桌面应用(一) Helloworld
  16. 怎么打开产品原型是html,如何打开产品原型图(axure)
  17. 报表平台——体系架构
  18. python基础知识相关习题
  19. 用程序阻止计算机睡眠,PreventTurnOff防止电脑休眠工具|win10电脑防止屏幕休眠软件_最火软件站...
  20. RGB和YCbCr颜色空间的转换及优化算法

热门文章

  1. Exp2 后门原理与实践
  2. Bootstrap自适应
  3. XCZU15 FPGA+ADRV9026 驱动调试记录
  4. 呼吸灯中1us、1ms、1s计时器加1和翻转条件
  5. 壳聚糖-甲氨蝶呤|Chitosan-MTX|甲氨蝶呤-PEG-壳聚糖
  6. 微信小程序 日历 课表 源码
  7. python和matlab计算速度对比_【转载】Fortran与Matlab的计算速度对比(Code by myself)...
  8. Java爬虫Selenium+Java+ChromeDriver【抓取百度信息】
  9. 使用java命令运行class
  10. 震惊!巨头宣布:裁员超90%!