package com.itheima.domain;public class Student {private String sid;//学号private String name;private int age;private String birthday;public Student() {}public Student(String sid, String name, int age, String birthday) {this.sid = sid;this.name = name;this.age = age;this.birthday = birthday;}public String getSid() {return sid;}public void setSid(String sid) {this.sid = sid;}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 getBirthday() {return birthday;}public void setBirthday(String birthday) {this.birthday = birthday;}
}
package com.itheima.test;import com.itheima.domain.Student;import java.util.ArrayList;
import java.util.Scanner;public class StudentManager {public static void main(String[] args) {ArrayList<Student> list=new ArrayList<>();Scanner sc=new Scanner(System.in);lo:while (true){String s = stuManager(sc,list);if (s.equals("5")){break lo;}}}private static String stuManager(Scanner sc,ArrayList<Student> list) {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("请输入您的选择:");String choise = sc.next();switch (choise){case "1":System.out.println("添加学生");addStudent(list);break;case "2":System.out.println("删除学生");deleStudent(list);break;case "3":System.out.println("修改学生");updateStudent(list);break;case "4":System.out.println("查看学生");queryStudent(list);break;case "5":System.out.println("退出");System.out.println("感谢您的使用!");break;default:System.out.println("您的输入有误");break;}return choise;}public static void updateStudent(ArrayList<Student> list) {System.out.println("请输入你要修改的学生的学号");Scanner sc=new Scanner(System.in);String updateSid = sc.next();int index=getIndex(list,updateSid);if (index==-1){System.out.println("查无信息,请重新输入");}else {System.out.println("请输入新的学生姓名:");String name=sc.next();System.out.println("请输入新的学生年龄:");int age=sc.nextInt();System.out.println("请输入新的学生生日:");String birthday=sc.next();Student stu=new Student(updateSid,name,age,birthday);list.set(index,stu);System.out.println("修改成功!");}}private static void deleStudent(ArrayList<Student> list) {System.out.println("请输入你要删除的学生的学号");Scanner sc=new Scanner(System.in);String deleteSid = sc.next();int index=getIndex(list,deleteSid);if (index==-1){System.out.println("查无信息,请重新输入");}else {list.remove(index);System.out.println("删除成功!");}}public static void queryStudent(ArrayList<Student> list) {if (list.size()==0){System.out.println("无信息,请添加后重新查询");return;}System.out.println("学号\t姓名\t年龄\t生日");for (int i = 0; i < list.size(); i++) {Student stu = list.get(i);System.out.println(stu.getSid()+"\t"+stu.getName()+"\t"+stu.getAge()+"\t"+stu.getBirthday());}}public static void addStudent(ArrayList<Student> list) {Scanner sc=new Scanner(System.in);String sid;while (true) {System.out.println("请输入学号:");sid = sc.next();int index = getIndex(list, sid);if (index==-1){break;}}System.out.println("请输入姓名:");String name=sc.next();System.out.println("请输入年龄:");int age=sc.nextInt();System.out.println("请输入生日:");String birthday=sc.next();Student stu=new Student(sid,name,age,birthday);list.add(stu);System.out.println("添加成功!");}public static int getIndex(ArrayList<Student> list,String sid){int index=-1;for (int i = 0; i < list.size(); i++) {Student stu = list.get(i);String id = stu.getSid();if (id.equals(sid)){index=i;}}return index;}
}

13.控制台命令行学生管理系统相关推荐

  1. 【C++源代码】命令行学生管理系统

    这是大一下学期时的课程设计,原题目如下: 请注意,此程序为命令行程序,需要接受命令行参数 使用示例: 假设生成的目标可执行exe文件(Windows系统上)或out文件(类UNIX系统上)的名字叫st ...

  2. Dll注入过滤任意Windows控制台命令行输入

    命令提示符也就是命令行控制台,新版本也叫做Windows 终端.如何做到当命令被输入控制台窗口后能够做到过滤呢? 其中,有一种就是键盘钩子判断键盘输入,但实用性可能不高. 另外一种方法就是获取控制台缓 ...

  3. Mac的控制台命令行报错:command not found

    这里只需要用户权限: 进入当前用户的home目录: cd ~ 创建bash_profile 执行命令: touch .bash_profile 打开并编辑bash_profile 执行命令: open ...

  4. Java输入光标在printf前面_C++ 设置控制台(命令行)窗口 光标位置,及前背景颜色

    核心代码 #include "stdafx.h" #include #include /* #define FOREGROUND_BLUE 0x0001 // text color ...

  5. java命令行交互_java控制台(命令行)输入交互(入门级示例)

    [实例简介] [实例截图] [核心代码] package com.mingrisoft; import java.io.FileWriter; import java.io.IOException; ...

  6. 带UI界面的学生管理系统

    GitHub地址 学生管理系统 简述 从8.7日到8.9晚上大功告成完成算有效时间的话大概三天,为暑假留校制作的第三个Demo,有注册登录,对学生信息进行增删改查,只不过没有放入文件进行储存,数据一次 ...

  7. 微软发布 Windows 命令行参考文档,涵盖超 250 项控制台命令

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 长久以来,许多人一直对各个版本的 Windows 控制台命令行不是很了解,更别提如何去使用了 ...

  8. Firebug Console 与命令行全集

    Console API 当打开 firebug (也包括 Chrome 等浏览器的自带调试工具),window 下面会注册一个叫做 console 的对象,它提供多种方法向控制台输出信息,供开发人员调 ...

  9. Kafka 常见命令行 Version 2.1.0

    Kafka Command Version 2.1.0 kafka-consumer-groups.sh kafka group 消费者组:list $ ./kafka-consumer-groups ...

最新文章

  1. Leaflet中原生方式实现测距
  2. GeneXus笔记本—城市级联下拉
  3. mysql 1005 - can't create table_关于创建数据表报错一例(ERROR 1005 Can’t create table (errno: 121))...
  4. AT4505-[AGC029F]Construction of a tree【构造题,hall定理,网络流】
  5. 第四十三期:2020年企业面临的20大数据安全风险
  6. latex 幻灯片演示模板
  7. STC51-C51基础知识
  8. 面试时,如何向公司提问?
  9. c语言计算器程序代码 链栈,【C语言】简易科学计算器源代码(链栈应用)(原创).doc...
  10. 15分钟快速了解如何在Kubernetes中配置健康检查
  11. 魔兽登录后 服务器那显示不兼容,魔兽世界服务器不兼容什么意思?魔兽世界服务器不兼容解决方法...
  12. IsPostBack详解
  13. Apachebench压力测试
  14. 数据结构 | 哈希表与哈希冲突的解决(一)
  15. 主板检测卡c5_电脑主板检测卡代码大全
  16. 图像识别利用计算机对图像进行,图像识别方法
  17. 福布斯中国上市公司最佳CEO排行
  18. Lync Server 2013 安裝手册
  19. 毕业设计-基于机器视觉的车型识别系统
  20. P2394 yyy loves Chemistry I

热门文章

  1. Linux复习3 实验 教材 Linux 教程 第5版 燕山大学
  2. 使用Eclipse配置Struts2开发环境
  3. ios仿微信短视频拍摄类库WechatShortVideo
  4. mysql smallint范围_mysql中的int smallint 取值范围
  5. Vue @click.stop 与 @mousewheel.prevent
  6. MyBatis Generator产生的Example类
  7. preempt_count分析
  8. 基于MATLAB的曲面积分
  9. 2021-11-03接雨水II
  10. python爬虫之下载盗墓笔记(bs4解析HTML)