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的更多相关文章

  1. Java基础进阶:学生管理系统数组方式分包源码实现,教师管理系统集合和数组两种方式源码实现,图书馆管理系统源码实现,现附重难点,代码实现源码,课堂笔记,课后扩展及答案

    1.案例驱动模式 1.1案例驱动模式概述 (理解) 通过我们已掌握的知识点,先实现一个案例,然后找出这个案例中,存在的一些问题,在通过新知识点解决问题 1.2案例驱动模式的好处 (理解) 解决重复代码 ...

  2. java基础: ArrayList集合应用, ArrayList增删改查详解,综合java基础实现学生管理系统,

    1.ArrayList 集合和数组的区别 : 共同点:都是存储数据的容器 不同点:数组的容量是固定的,集合的容量是可变的 1.1 -ArrayList的构造方法和添加方法 public ArrayLi ...

  3. java基础:学生管理系统

    package com.lovo.manager; import java.util.Scanner; /** * 学生管理 * * @author 向往的生活 * */public class St ...

  4. 第83节:Java中的学生管理系统分页功能

    第83节:Java中的学生管理系统分页功能 分页功能一般可以做成两种,一种是物理分页,另一种是逻辑分页.这两种功能是有各自的特点的,物理分页是查询的时候,对数据库进行访问,只是查一页数据就进行返回,其 ...

  5. 第82节:Java中的学生管理系统

    第82节:Java中的学生管理系统 学生管理系统的删除功能 删除,点击超链接,点击弹出对话框式是否进行删除,如果确定,就删除,超链接执行的是js方法,在js里访问,跳转servlet,,servlet ...

  6. java版本的学生管理系统

    import java.awt.BorderLayout; import java.awt.Color; import java.awt.Frame; import java.awt.event.Ac ...

  7. 初学Java Web(9)——学生管理系统(简易版)总结

    项目开始时间:2018年4月8日14:37:47 项目完成时间:2018年4月9日10:03:30 技术准备 这个项目是自己用于巩固 J2EE 相关知识的练手项目,非常简单,但是相关的功能却非常实用, ...

  8. java课程设计 学生管理系统

    学生成绩管理系统 可实现功能 学生管理系统 查询学生信息:姓名.学号.性别.出生年月日.(学号自动生成且唯一) 查询学生成绩:每个人都有数学.Java与体育与选修课 查询学生课程 进行公选课选课 教师 ...

  9. Java学习笔记-学生管理系统

    Java学习笔记 一个Student类 public class Student { private String sid; private String name; private String a ...

随机推荐

  1. deeplearning搜索空间

    deeplearning搜索空间 搜索空间是神经网络搜索中的一个概念.搜索空间是一系列模型结构的汇集, SANAS主要是利用模拟退火的思想在搜索空间中搜索到一个比较小的模型结构或者一个精度比较高的模型 ...

  2. Numba实时变量分析

    Numba实时变量分析 Numba使用引用计数进行垃圾回收,这是一种需要编译器配合的技术.Numba IR对必须插入decref的位置进行编码.这些位置通过实时变量分析确定.相应的源代码是https: ...

  3. 『假如我是面试官』RabbitMQ我会这样问

    1. 为什么你们公司选择RabbitMQ作为消息中间件 在消息队列选型时,我们调研了市场上比较常用ActiveMQ,RabbitMQ,RocketMQ,Kafka. RabbitMQ相对成熟稳定,这是 ...

  4. 【题解】Luogu2915 [USACO08NOV]奶牛混合起来Mixed Up Cows

    题目描述 Each of Farmer John's N (4 <= N <= 16) cows has a unique serial number S_i (1 <= S_i & ...

  5. 基于ABP落地领域驱动设计-06.正确区分领域逻辑和应用逻辑

    目录 系列文章 领域逻辑和应用逻辑 多应用层 示例:正确区分应用逻辑和领域逻辑 学习帮助 系列文章 基于ABP落地领域驱动设计-00.目录和前言 基于ABP落地领域驱动设计-01.全景图 基于ABP落 ...

  6. MySQL—Dos命令操作数据库

    MySQL 是一个关系型数据库,存在表的概念 结构,数据库可以存放多张表,每个表可以存放多个字段,每个字段可以存放多个记录 Dos命令操作数据库 PhpStudy使用终端打开数据库 第一次打开默认的密 ...

  7. Unity 添加,修改默认创建脚本模板

    Unity 默认创建的脚本可以添加也可以修改,不需要修改Editor. 一.找到模板目录 \Editor\Data\Resources\ScriptTemplates 二.如果要修改模板,直接打开修改 ...

  8. 跟我一起学 Go 系列:gRPC 拦截器

    Go gRPC 学习系列: 跟我一起学Go系列:gRPC 入门必备 第一篇内容我们已经基本了解到 gRPC 如何使用 .对应的三种流模式.现在已经可以让服务端和客户端互相发送消息.本篇仍然讲解功能性的 ...

  9. 1、Centos7下安装Oracle11gR2及多实例

    实验环境: 系统:2核8G内存60G硬盘,centos7.4: 优化操作:已经关闭了防火墙.selinux,/etc/hosts文件中以添加"172.16.1.92 slave-node2& ...

  10. Java运算中的类型转换

    类型转换 运算中,不同类型的数据先转化为同一类型,然后进行运算 public class Dome04 { public static void main(String[] args) { //int ...