Java基础00-学生管理系统16
1. 学生管理系统
1.1 项目演示

1.2 实现思路

1.3 定义学生类

public class Student {
private String sid;
private String name;
private String age;
private String address;
public Student() {
}
public Student(String sid, String name, String age, String address){
this.sid = sid;
this.name = name;
this.age = age;
this.address = address;
}
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 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;
}
}
1.4 主界面的代码编写

import java.util.ArrayList;
import java.util.Scanner; public class StudentManager {
public static void main(String[] args) { 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("请输入你的选择:"); Scanner sc = new Scanner(System.in);
String line = sc.nextLine(); switch (line) {
case "1":
System.out.println("添加学生");
break;
case "2":
System.out.println("删除学生");
break;
case "3":
System.out.println("修改学生");
break;
case "4":
System.out.println("查看所有学生");
break;
case "5":
System.out.println("谢谢使用");
System.exit(0);//JVM退出
}
}
}
}
运行结果:
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
4
查看所有学生
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
5
谢谢使用
1.5 添加学生的代码编写

import java.util.ArrayList;
import java.util.Scanner; public class StudentManager {
public static void main(String[] args) {
ArrayList<Student> array = new ArrayList<>(); 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("请输入你的选择:"); Scanner sc = new Scanner(System.in);
String line = sc.nextLine(); switch (line) {
case "1":
//System.out.println("添加学生");
addStudent(array);
break;
case "2":
System.out.println("删除学生");
break;
case "3":
System.out.println("修改学生");
break;
case "4":
System.out.println("查看所有学生");
break;
case "5":
System.out.println("谢谢使用");
System.exit(0);//JVM退出
}
}
} public static void addStudent(ArrayList<Student> array){
//录入学生数据
Scanner sc = new Scanner(System.in);
System.out.println("请输入学生学号:");
String sid = 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.setSid(sid);
s.setName(name);
s.setAge(age);
s.setAddress(address); //添加到集合中
array.add(s);
System.out.println("添加学生成功");
}
}
运行结果:
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
1
请输入学生学号:
1
请输入学生姓名:
Tom
请输入学生年龄:
9
请输入学生居住地:
888
添加学生成功
1.6 查看学生的代码编写

public static void findAllStudent(ArrayList<Student> array){
//显示表头信息
System.out.println("学号\t姓名\t年龄\t居住地");
//将集合中数据取出按照对应格式显示学生信息
for (int i=0; i<array.size(); i++){
Student s = array.get(i);
System.out.println(s.getSid()+"\t"+s.getName()+"\t"+s.getAge()+"\t"+s.getAddress());
}
}
public static void main(String[] args) {
ArrayList<Student> array = new ArrayList<>();
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("请输入你的选择:");
Scanner sc = new Scanner(System.in);
String line = sc.nextLine();
switch (line) {
case "1":
//System.out.println("添加学生");
addStudent(array);
break;
case "2":
System.out.println("删除学生");
break;
case "3":
System.out.println("修改学生");
break;
case "4":
//System.out.println("查看所有学生");
findAllStudent(array);
break;
case "5":
System.out.println("谢谢使用");
System.exit(0);//JVM退出
}
}
}
运行结果:
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
1
请输入学生学号:
1
请输入学生姓名:
tom
请输入学生年龄:
3
请输入学生居住地:
789
添加学生成功
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
4
学号 姓名 年龄 居住地
1 tom 3 789
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
5
谢谢使用
1.7 查看学生的代码编写升级版

public static void findAllStudent(ArrayList<Student> array){
//判断数据
if (array.size() == 0){
System.out.println("无信息,请先输入信息");
//为了让程序不再往下执行,给出return;
return;
}
//显示表头信息
System.out.println("学号\t姓名\t年龄\t居住地");
//将集合中数据取出按照对应格式显示学生信息
for (int i=0; i<array.size(); i++){
Student s = array.get(i);
System.out.println(s.getSid()+"\t"+s.getName()+"\t"+s.getAge()+"\t"+s.getAddress());
}
}
运行结果:
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
4
无信息,请先输入信息
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
1.8 删除学生的代码编写

public static void deleteStudent(ArrayList<Student> array){
//录入删除学生学号
Scanner sc = new Scanner(System.in);
System.out.println("请输入要删除学生的学号:");
String sid = sc.nextLine();
//遍历集合删除对应学号学生
for (int i=0; i<array.size(); i++){
Student s = array.get(i);
if (s.getSid().equals(sid)){
array.remove(i);
break;
}
}
System.out.println("删除成功");
}
public static void main(String[] args) {
ArrayList<Student> array = new ArrayList<>();
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("请输入你的选择:");
Scanner sc = new Scanner(System.in);
String line = sc.nextLine();
switch (line) {
case "1":
//System.out.println("添加学生");
addStudent(array);
break;
case "2":
//System.out.println("删除学生");
deleteStudent(array);
break;
case "3":
System.out.println("修改学生");
break;
case "4":
//System.out.println("查看所有学生");
findAllStudent(array);
break;
case "5":
System.out.println("谢谢使用");
System.exit(0);//JVM退出
}
}
}
运行结果:
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
1
请输入学生学号:
1234
请输入学生姓名:
tom
请输入学生年龄:
99
请输入学生居住地:
7899888
添加学生成功
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
2
请输入要删除学生的学号:
1234
删除成功
1.9 修改学生的代码编写

public static void updateStudent(ArrayList<Student> array){
Scanner sc = new Scanner(System.in);
System.out.println("请输入要修改的学生学号:");
String sid = sc.nextLine();
System.out.println("请输入修改后的姓名:");
String name = sc.nextLine();
System.out.println("请输入修改后的年龄:");
String ang = sc.nextLine();
System.out.println("请输入修改后的居住地:");
String address = sc.nextLine();
Student s = new Student();
s.setSid(sid);
s.setName(name);
s.getAge();
s.setAddress(address);
for (int i=0; i<array.size(); i++){
Student s1 = array.get(i);
if (s1.getSid().equals(sid)){
array.set(i,s);
break;
}
}
}
public static void main(String[] args) {
ArrayList<Student> array = new ArrayList<>();
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("请输入你的选择:");
Scanner sc = new Scanner(System.in);
String line = sc.nextLine();
switch (line) {
case "1":
//System.out.println("添加学生");
addStudent(array);
break;
case "2":
//System.out.println("删除学生");
deleteStudent(array);
break;
case "3":
//System.out.println("修改学生");
updateStudent(array);
break;
case "4":
//System.out.println("查看所有学生");
findAllStudent(array);
break;
case "5":
System.out.println("谢谢使用");
System.exit(0);//JVM退出
}
}
}
运行结果:
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
1
请输入学生学号:
1234
请输入学生姓名:
tom
请输入学生年龄:
9
请输入学生居住地:
9874
添加学生成功
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
3
请输入要修改的学生学号:
1234
请输入修改后的姓名:
bob
请输入修改后的年龄:
874
请输入修改后的居住地:
54648
1.10 解决删除/修改学生学号不存在问题

public static void deleteStudent(ArrayList<Student> array){
//录入删除学生学号
Scanner sc = new Scanner(System.in);
System.out.println("请输入要删除学生的学号:");
String sid = sc.nextLine();
//判断是否存在,遍历集合删除对应学号学生
int index = -1;
for (int i=0; i<array.size(); i++){
Student s = array.get(i);
if (s.getSid().equals(sid)){
index=i;
break;
}
}
if (index == -1){
System.out.println("该信息不存在,请重新输入");
}else{
array.remove(index);
System.out.println("删除学生成功");
}
}
1.11 解决添加学生学号重复问题

public static boolean isUsed(ArrayList<Student> array,String sid){
boolean flag = false;
for (int i=0; i<array.size(); i++){
Student s = array.get(i);
if (s.getSid().equals(sid)){
flag = true;
break;
}
}
return flag;
}
public static void addStudent(ArrayList<Student> array){
//录入学生数据
Scanner sc = new Scanner(System.in);
//为了让sid在while循环外被使用,把其定义在循环外
String sid;
//为了让程序能够回到这里,使用循环实现
while(true){
System.out.println("请输入学生学号:");
sid = sc.nextLine();
boolean flag = isUsed(array, sid);
if (flag){
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.setSid(sid);
s.setName(name);
s.setAge(age);
s.setAddress(address);
//添加到集合中
array.add(s);
System.out.println("添加学生成功");
}
运行结果:
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
1
请输入学生学号:
1
请输入学生姓名:
45
请输入学生年龄:
45
请输入学生居住地:
45
添加学生成功
………………欢迎来到学生管理系统………………
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
1
请输入学生学号:
1
你输入的学号已被使用,请重新输入
请输入学生学号:
Java基础00-学生管理系统16的更多相关文章
- Java基础进阶:学生管理系统数组方式分包源码实现,教师管理系统集合和数组两种方式源码实现,图书馆管理系统源码实现,现附重难点,代码实现源码,课堂笔记,课后扩展及答案
1.案例驱动模式 1.1案例驱动模式概述 (理解) 通过我们已掌握的知识点,先实现一个案例,然后找出这个案例中,存在的一些问题,在通过新知识点解决问题 1.2案例驱动模式的好处 (理解) 解决重复代码 ...
- java基础: ArrayList集合应用, ArrayList增删改查详解,综合java基础实现学生管理系统,
1.ArrayList 集合和数组的区别 : 共同点:都是存储数据的容器 不同点:数组的容量是固定的,集合的容量是可变的 1.1 -ArrayList的构造方法和添加方法 public ArrayLi ...
- java基础:学生管理系统
package com.lovo.manager; import java.util.Scanner; /** * 学生管理 * * @author 向往的生活 * */public class St ...
- 第83节:Java中的学生管理系统分页功能
第83节:Java中的学生管理系统分页功能 分页功能一般可以做成两种,一种是物理分页,另一种是逻辑分页.这两种功能是有各自的特点的,物理分页是查询的时候,对数据库进行访问,只是查一页数据就进行返回,其 ...
- 第82节:Java中的学生管理系统
第82节:Java中的学生管理系统 学生管理系统的删除功能 删除,点击超链接,点击弹出对话框式是否进行删除,如果确定,就删除,超链接执行的是js方法,在js里访问,跳转servlet,,servlet ...
- java版本的学生管理系统
import java.awt.BorderLayout; import java.awt.Color; import java.awt.Frame; import java.awt.event.Ac ...
- 初学Java Web(9)——学生管理系统(简易版)总结
项目开始时间:2018年4月8日14:37:47 项目完成时间:2018年4月9日10:03:30 技术准备 这个项目是自己用于巩固 J2EE 相关知识的练手项目,非常简单,但是相关的功能却非常实用, ...
- java课程设计 学生管理系统
学生成绩管理系统 可实现功能 学生管理系统 查询学生信息:姓名.学号.性别.出生年月日.(学号自动生成且唯一) 查询学生成绩:每个人都有数学.Java与体育与选修课 查询学生课程 进行公选课选课 教师 ...
- Java学习笔记-学生管理系统
Java学习笔记 一个Student类 public class Student { private String sid; private String name; private String a ...
随机推荐
- deeplearning模型分析
deeplearning模型分析 FLOPs paddleslim.analysis.flops(program, detail=False) 获得指定网络的浮点运算次数(FLOPs). 参数: pr ...
- CPU消耗,跟踪定位理论与实践
CPU消耗,跟踪定位理论与实践 一.性能指标之资源指标定位方案 1.打tprof报告方法 抓取perfpmr文件 60秒. perfpmr.sh 60 从结果文件中取出tprof.sum 或直接抓取t ...
- MinkowskiEngine多GPU训练
MinkowskiEngine多GPU训练 目前,MinkowskiEngine通过数据并行化支持Multi-GPU训练.在数据并行化中,有一组微型批处理,这些微型批处理将被送到到网络的一组副本中. ...
- [论文阅读笔记] Adversarial Mutual Information Learning for Network Embedding
[论文阅读笔记] Adversarial Mutual Information Learning for Network Embedding 本文结构 解决问题 主要贡献 算法原理 实验结果 参考文献 ...
- 『言善信』Fiddler工具 — 11、Fiddler中Composer功能详解
目录 1.Composer功能介绍 2.Composer界面说明 3.使用方式 (1)自定义Request请求 (2)Composer重复发送请求 (3)Composer篡改请求数据 1.Compos ...
- POI导出Excel时下拉列表值超过255的问题(String literals in formulas can't be bigger than 255 characters ASCII)
//创建Excel工作薄对象 Workbook workbook = new HSSFWorkbook(); //生成一个表格 设置:页签 Sheet sheet = workbook.createS ...
- Jenkins 进阶篇 - 数据备份
随着我们的长期使用,Jenkins 系统中的内容会越来越多,特别是一些配置相关的东西,不能有任何丢失.这个时候我们就需要定期备份我们的 Jenkins 系统,避免一些误操作不小心删除了某些重要文件,J ...
- 【逆向&编程实战】Metasploit中的安卓载荷凭什么吊打SpyNote成为安卓端最强远控
文章作者:MG1937 QQ:3496925334 CNBLOG:ALDYS4 未经许可,禁止转载 前言 说起SpyNote大家自然不陌生,这款恶意远控软件被利用在各种攻击场景中 甚至是最近也捕获到了 ...
- UF_UI 界面相关
Open C uc1600uc1601uc1603 uc1605uc1607uc1608uc1609uc1613 获取用户输入的字符串uc1615uc1616uc1617uc1618uc163 ...
- raft 图解 (秒懂)
文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...