Java实现班级管理系统
作者:初学Java的萌新 发布时间:2022-05-08 07:29:48
标签:java,班级,管理系统
本文为大家分享了Java实现班级管理系统的具体代码,供大家参考,具体内容如下
需求:班级管理系统
功能:对学生的信息进行管理
1 登录系统 2 退出系统
账号:
密码:
验证码
-----欢迎来到班级管理系统-----
1 添加学生信息:
2 删除学生信息
3 查找指定学生信息:
4 查找所有学生信息
5 统计班级信息
6 退出
请选择您要查询的序号:
建立一个Student类:
public class Student {
private String sid; // 学号
private String name; // 姓名
private int age; // 年龄
private String sex; // 性别
private String brithday; // 生日
private String constellation; // 星座
private String message; // 查看班级信息
public Student(){
}
public Student(String sid, String name, int age, String sex, String brithday, String constellation, String message) {
this.sid = sid;
this.name = name;
this.age = age;
this.sex = sex;
this.brithday = brithday;
this.constellation = constellation;
this.message = message;
}
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 getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getBrithday() {
return brithday;
}
public void setBrithday(String brithday) {
this.brithday = brithday;
}
public String getConstellation() {
return constellation;
}
public void setConstellation(String constellation) {
this.constellation = constellation;
}
public String getMessage(){
return message;
}
public void setMessage(String message){
this.message = message;
}
}
在建立一个测试类StudentDemo:
1.先实现界面
public static void main(String[] args) {
ArrayList<Student> list = new ArrayList<>();
Scanner sc = new Scanner(System.in);
Random random = new Random();
// 登录系统
lo:
while(true){
System.out.println("1 登录系统" + " " + "2 退出系统");
String count = sc.next();
switch(count){
case "1":
//输入账号密码
int num = 0;
for (int i = 0; i < 3; i++) {
System.out.println("请输入管理员账号:");
String uesr = sc.next();
System.out.println("请输入管理员密码:");
String password = sc.next();
// 验证码
String code = "1234567890zxcvbnmlkjhgfdsaqwertyuiopZMXNCBVLAKSJDHFGQPWOEIRUTY";
StringBuilder ss= new StringBuilder();
int number = code.length();
for (int j = 0; j < 4; j++) {
int a = random.nextInt(number);
char ch = code.charAt(a);
ss.append(ch);
}
while (true){
System.out.println("请输入验证码:" + ss);
String Code = sc.next();
System.out.print("验证码:" + Code);
if(Code.equalsIgnoreCase(ss.toString())){
System.out.println("验证成功!");
break;
}else{
System.out.println("您输入的有误,请重新输入!");
}
}
if(uesr.equals("admin") && password.equals("123456")){
System.out.println("登录成功!");
break lo;
}else{
num++;
if(num < 3){
System.out.println("您输入的账号或密码错误,请重新输入!");
}else{
System.out.println("您已连续三次输入错误,请24小时以后再次尝试!");
return;
}
}
}
case "2":
return;
default:
System.out.println("您输入的有误,请重新输入!");
break;
}
}
// 登录界面
Scanner s = new Scanner(System.in);
la:
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("6 退出");
System.out.println("请选择您要查询的序号:");
// 选择要执行的代码块
String num = sc.next();
switch(num){
case "1":
// System.out.println("1 添加学生信息:");
addStudent(list);
break;
case "2":
// System.out.println("2 删除学生信息");
deleteStudent(list);
break;
case "3":
// System.out.println("3 查找指定学生信息:");
locatingStudent(list);
break;
case "4":
// System.out.println("4 查找所有学生信息");
setStudent(list);
break;
case "5":
// System.out.println("5 统计班级信息");
printMessage(list);
break;
case "6":
System.out.println("退出");
break la;
default:
System.out.println("您输入的有误请重新输入!");
break;
}
}
}
2.建立一个判断系统中是否存在学生的类
// 判断学生是否存在
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;
}
3.添加学生
//添加学生
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;
}else{
System.out.println("您输入的学号已存在,请重新输入!");
}
}
System.out.println("请输入您的姓名:");
String name = sc.next();
System.out.println("请输入您的年龄:");
int age = sc.nextInt();
System.out.println("请输入您的性别:");
String sex = sc.next();
System.out.println("请输入您的生日:");
String brithday = sc.next();
System.out.println("请输入您的小组:");
String groud = sc.next();
System.out.println("请输入您的星座:");
String constellation = sc.next();
Student stu = new Student(sid,name,age,sex,brithday,groud,constellation);
list.add(stu);
System.out.println("添加成功!");
}
4.删除学生
// 删除学生
public static void deleteStudent(ArrayList<Student> list) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入您要删除的学号:");
String sid = sc.next();
int index = getIndex(list,sid);
if(index == -1){
System.out.println("您输入的学生号不存在!");
return;
}else{
list.remove(index);
System.out.println("删除成功!");
}
}
5.查找指定学生信息
// 查找指定学生
public static void locatingStudent(ArrayList<Student> list) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入您要查找的学号:");
String sid = sc.next();
Student stu = new Student();
int index = getIndex(list,sid);
if(index == -1){
System.out.println("无信息,请添加信息之后在查找!");
return;
}else{
for (int i = 0; i < list.size(); i++) {
Student a = list.get(i);
System.out.println("学号:" + a.getSid());
System.out.println("姓名:" + a.getName());
System.out.println("年龄:" + a.getAge());
System.out.println("性别:" + a.getSex());
System.out.println("生日:" + a.getBrithday());
System.out.println("星座:" + a.getConstellation());
}
}
}
6.查找所有学生信息
// 查找所有学生信息
public static void setStudent(ArrayList<Student> list) {
int s = list.size();
if(s == 0){
System.out.println("暂无信息,请添加以后再次查询!");
return;
}
System.out.println("学号\t姓名\t年龄\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.getSex() + "\t" + stu.getBrithday() + "\t" + stu.getConstellation());
}
}
7.统计班级的信息
// 统计班级信息
public static void printMessage(ArrayList<Student> list) {
// 多少人,男女,
int count = 0;
int total = list.size();
for (int i = 0; i < list.size(); i++) {
Student stu = list.get(i);
if(stu.getSex().equals("男")){
count++;
}
}
System.out.println("班级有:" + total + "人");
System.out.println("班级男生有:" + count + "人");
System.out.println("班级女生有:" + (total - count) + "人");
}
来源:https://blog.csdn.net/qq_44804064/article/details/114806191
0
投稿
猜你喜欢
- 简介Mybatis-Plus(简称MP)是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效
- 下面本文将针对以上几点问题进行描述讨论,我们就以“中文”两个字为例来说明,查找相关资料可知“中文”的GB2312编码是“d6d0 cec4”
- json数据交互1.为什么要进行json数据交互json数据格式在接口调用中、html页面中较常用,json格式比较简单,解析还比较方便。比
- 1.概述我们之前讨论过Java Generics的基础知识。在本文中,我们将了解Java中的通用构造函数。 泛型构造函数是至少需要有一个泛型
- 打注解@SpringBootTest的时候不会出现提示但是又导入了 <dependency> &nb
- 还原背景大家都做过b-s架构的应用,也就是基于浏览器的软件应用。现在呢有个场景就是FE端也就是前端工程是前后端分离的,采用主流的前端框架VU
- 进阶JavaSE-三大接口:Comparator、Comparable和Cloneable。Comparable和Comparator这两个
- 一、编译环境spring5.0.x源码gradle4.9jdk1.8_151IntelliJ IDEA 2020.1二、安装gradle1、
- 前言今天主要讲的是如何把通过接口获取到的Xml数据转换成(反序列化)我们想要的实体对象,当然Xml反序列化和Json反序列化的方式基本上都是
- 前言分页是我们在开发中绕不过去的一个坎!当你的数据量大了的时候,一次性将所有数据查出来不现实,所以我们一般都是分页查询的,减轻服务端的压力,
- 有一天,你写了好多好多带“形参”的构造函数(就是“方法”,同义),而且需要向这些构造函数里传递同样的“实参”,然后你就憨憨地一个一个函数的调
- 目录1.搭建环境2.项目搭建3.配置maven4.项目结构5.配置 MapperScan 注解6.创建实体7.创建接口8.测试8.1 upd
- 一、概述在日常开发中,获取一批数据后,可能需要跟据一定规则对这批数据进行排序操作。在JAVA中,动态数组ArrayList经常被用来存储数据
- 最近研究OpenCV想用java进行开发,因此研究了一下怎么在Eclipse中配置基于java的Opencv.第一步:先到OpenCV官网下
- .ini 文件是Initialization File的缩写,即初始化文件,是windows的系统配置文件所采用的存储格式,统管window
- 前言Spring Cloud默认为Zuul编写并启用了一些过滤器,这些过滤器有什么作用呢?我们不妨按照@EnableZuulServer、@
- DataSet 对象是支持 ADO.NET的断开式、分布式数据方案的核心对象 ,用途非常广泛.我们很多时候需要使用其中的数据,比如取得一个D
- 目录1、两阶段终止模式介绍2、Terminator代码演示3、TerminationRequester4、模拟客户端或者服务端都可能终止服务
- JavaFX主要致力于富客户端开发,以弥补swing的缺陷,主要提供图形库与media库,支持audio,video,graphic,ani
- Servlet1 Servlet 简介Servlet就是Sun 公司开发动态web的一门技术Sun在这些API中提供一个接口叫做:Servl