java控制台实现学生信息管理系统(集合版)

网友投稿 279 2023-01-18

java控制台实现学生信息管理系统(集合版)

使用java语言用集合存储数据实现学生信息管理系统,在控制台上编译执行

可以实现基本的学生信息增加、删除、修改、查询功能

IO版可以参考我的另外一篇博文。

运行界面如下

欢迎界面

添加学生信息

删除学生信息

修改学生信息

查询学生信息

退出系统

系统模块结构图

系统业务流程图

代码如下

Student类

public class Student {

private String stuNo;

private String name;

private int age;

public Student() {

super();

// TODO Auto-generated constructor stub

}

public Student(String stuNo, String name, int age) {

super();

this.stuNo = stuNo;

this.name = name;

this.age = age;

}

public String getStuNo() {

return stuNo;

}

public void setStuNo(String stuNo) {

this.stuNo = stuNo;

}

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;

}

@Override

public int hashCode() {

final int prime = 31;

int result = 1;

result = prime * result + age;

result = prime * result + ((name == null) ? 0 : name.hashCode());

result = prime * result + ((stuNo == null) ? 0 : stuNo.hashCode());

return result;

}

@Override

public boolean equals(Object obj) {

if (this == obj)

return true;

if (obj == null)

return false;

if (getClass() != obj.getClass())

return false;

Student other = (Student) obj;

if (age != other.age)

return false;

if (name == null) {

if (other.name != null)

return false;

} else if (!name.equals(other.name))

return false;

if (stuNo == null) {

if (other.stuNo != null)

return false;

} else if (!stuNo.equals(other.stuNo))

return false;

return true;

}

@Override

public String toString() {

return "学生:学号 " + stuNo + ", 姓名 " + name + ", 年龄 " + age ;

}

}

StudentDao类

import java.util.ArrayList;

import java.util.Iterator;

import java.util.List;

import java.util.ListIterator;

import java.util.Scanner;

public class StudentDAO {

static List list = new ArrayList<>();

static String ig = "1000";

Scanner sc = new Scanner(System.in);

// 增加学生信息

public void add(List list) {

int ig = Integer.parseInt(this.ig);

while (true) {

System.out.println(ig);

System.out.println("请输入你要添加的学号为" + ig + "的学生的姓名");

String name = sc.next();

while (true) {

System.out.println("请输入你要添加的学号为" + ig + "的学生的年龄");

Scanner sc1 = new Scanner(System.in);

if (sc1.hasNextInt()) {

int age = sc1.nextInt();

list.add(new Student(String.valueOf(ig), name, age));

break;

} else {

System.out.println("请正确输入");

continue;

}

}

System.out.println("学号为" + ig + "的学生信息添加成功");

ig++;

this.ig = String.valueOf(ig);

System.out.println("添加信息后,学生的信息为:");

query(list);

System.out.println("是否继续执行添加操作(y/n)");

String result = sc.next();

if (result.equalsIgnoreCase("n") || result.equalsIgnoreCase("y")) {

if (result.equalsIgnoreCase("n")) {

break;

}

}

}

}

// 删除学生信息

public void del(List list) {

if (list.size() != 0) {

a: while (true) {

query(list);

System.out.println("请输出你要删除的学生的学号");

String str = sc.next();

Iterator it = list.iterator();

while (it.hasNext()) {

Student stu = it.next();

if (stu.getStuNo().equals(str)) {

it.remove();

System.out.println("删除成功!");

System.out.println("删除操作后,学生的信息为:");

query(list);

break a;// 跳出到指定循环外

}

}

System.out.println("查无此人……请查证后重新输入");

}

} else {

System.out.println("还没有添加学生信息,快去添加学生信息吧");

}

}

// 修改学生信息

public void update(List list) {

if (list.size() != 0) {

a: while (true) {

query(list);

System.out.println("请输入要修改学生的学号:");

String stuNo = sc.next();

ListIterator lit = list.listIterator();

while (lit.hasNext()) {

Student stu = lit.next();

if (stu.getStuNo().equals(stuNo)) {

System.out.println("请输入您要修改的学生的姓名");

String name = sc.next();

System.out.println("请输入您要修改的学生的年龄");

if (sc.hasNextInt()) {

int age = sc.nextInt();

stu.setName(name);

stu.setAge(age);

System.out.println("修改操作后,学生的信息为:");

query(list);

break a;

} else {

System.out.println("请正确输入年龄");

}

}

}

System.out.println("查无此人……请查证后重新输入");

}

} else {

System.out.println("还没有添加学生信息,快去添加学生信息吧");

}

}

// 查询学生信息

public void query(List list) {

if (list.size() != 0) {

System.out.println("=============学生信息==============");

for (Student stu : list) {

System.out.println(stu);

}

System.out.println("=================================");

} else {

System.out.println("还没有添加学生信息,快去添加学生信息吧");

}

}

}

StudentManager类

import java.util.Scanner;

/**

*

* 创建时间:2019年12月6日 上午11:40:57

*

*

*/

public class StudentManager {

public static void main(String[] args) {

while (true) {

Scanner sc = new Scanner(System.in);

System.out.println();

System.out.println();

System.out.println("=================================");

System.out.println("=========欢迎使用学生管理系统 =========");

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("请输入您的选择");

int choose;

if (sc.hasNextInt()) {

choose = sc.nextInt();

if (choose > 0 && choose < 6) {

Student st = new Student();

StudentDAO std = new StudentDAO();

switch (choose) {

case 1:

std.add(std.list);

break;

case 2:

std.del(std.list);

break;

case 3:

std.update(std.list);

break;

case 4:

std.querdxwEGCy(std.list);

break;

case 5:

System.out.println("成功退出……");

System.out.println("欢迎下次使用");

System.exit(0);

break;

}

} else {

System.out.println("请正确输入");

}

} else {

System.out.prinhttp://tln("请您输入正确的选项");

}

}

}

}

本系统中查询功能不是很完善,可以实现功能使用查询功能时可以选择查询全部、按学号查询、按姓名分类等不同的查询方法。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:解决springboot使用logback日志出现LOG_PATH_IS_UNDEFINED文件夹的问题
下一篇:开放api接口的手环(开放api接口的手环是什么)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~