一个简单的学生信息管理系统

要求

总体要求

学生信息:学号、姓名、性别、年龄、班级、宿舍
实现学生信息的增删改查

详细要求

增加:public void addStu()
给数据库中添加一条学生数据。
删除:public void delStu()
从数据库中根据学号删除一条学生数据。
修改:public void updStu()
可以根据学号修改学生的信息.例如请实现修改学号为10086的学生姓名:三一改为三毛,年龄20改为25 性别 男改为女
查询:public void showStu()
可以根据学号查询学生的信息
**备注:**边界检测基本没做,例如性别没限制等等

运行截图

运行截图

该程序有两个类

(1)学生增删改查方法类

//学生类  
import java.util.*;
public class Student {
    int stuNumber, stuAge, stuBanji;
    String stuName, stuSex, stuRoom;

    ArrayList<Student> stuDb = new ArrayList<Student>();
    Iterator<Student> it = stuDb.iterator();

    //添加学生信息      学号 姓名 性别 年龄 班级 宿舍
    public void addStu(int stuXueHAO, String stuXinming, String stuXingbie, int stuNianling, int stuBJ, String stuSUshe) {
        Boolean isAdd = true;//T代表能添加,反之
        Student sADD = new Student();
        //边界检测 如果有重复学号添加 则添加失败
        if (stuDb.size() == 0){
            sADD.stuNumber = stuXueHAO;
            sADD.stuName = stuXinming;
            sADD.stuSex = stuXingbie;
            sADD.stuAge = stuNianling;
            sADD.stuBanji = stuBJ;
            sADD.stuRoom = stuSUshe;
            stuDb.add(sADD);
            System.out.printf("添加成功!");
        }
         else {
            for (int i = 0; i <stuDb.size() ; i++){
                if(stuDb.get(i).stuNumber==stuXueHAO){
                    System.out.println("学生已在数据库中,添加失败!");
                    isAdd=false;//如果有重复就不能添加,将添加标志置false
                }
                }
            }
         if(isAdd==true && stuDb.get(0).stuNumber != stuXueHAO){
             sADD.stuNumber = stuXueHAO;
             sADD.stuName = stuXinming;
             sADD.stuSex = stuXingbie;
             sADD.stuAge = stuNianling;
             sADD.stuBanji = stuBJ;
             sADD.stuRoom = stuSUshe;
             stuDb.add(sADD);
             System.out.printf("添加成功!");
         }
             isAdd = true;//对标志重新赋值,要不然重复一次之后isadd就永远被设置为false了
        // 根本进不去if(isAdd==true && stuDb.get(0).stuNumber != stuXueHAO)这个循环

        }
    @Override
    public String toString() {
        return "Student{" +
                "姓名='" + stuName + '\'' +
                ",学号=" + stuNumber +
                ",性别='" + stuSex + '\'' +
                ",年龄=" + stuAge +
                ",班级=" + stuBanji +
                ",宿舍='" + stuRoom + '\'' +
                '}';
    }
    //根据指定学号 删除学生信息
    public void delStu(int delNum) {

        if(stuDb.isEmpty()){
             System.out.println("数据库内为空,删除失败!");
        }
        for (int i = 0; i <stuDb.size() ; i++) {
            if(stuDb.get(i).stuNumber==delNum){
                stuDb.remove(i);
                System.out.printf("删除成功!");
                return;
            }
            }
        if(!stuDb.isEmpty()){
            System.out.println("数据库内没有该学生信息,删除失败!");
        }
        }

    //根据指定学号 更新学生信息
    public void updStu(int updNum,String updName,String updXingBie,int updAge) {
        if (stuDb.isEmpty()) {
            System.out.println("数据库内为空,修改失败!");
        }
        for (int i = 0; i < stuDb.size(); i++) {
            if (stuDb.get(i).stuNumber == updNum) {
                stuDb.get(i).stuName=updName;
                stuDb.get(i).stuSex=updXingBie;
                stuDb.get(i).stuAge=updAge;
                System.out.printf("修改成功!");
                return;
            }
        }
        if(!stuDb.isEmpty()){
            System.out.println("数据库内没有该学生信息,修改失败!");
        }
    }

    //查看学生信息
    public void showStu() {
        Iterator<Student> it = stuDb.iterator();
        while (it.hasNext()) {
            Student tempS = it.next();
            System.out.println(tempS);
        }
        if(stuDb.size()==0){
            System.out.println("目前数据库中还没有学生!");
        }
    }
}

(2)功能实现类

import java.util.*;

public class Operate {
    static Scanner rader = new Scanner(System.in);
    Student opeStu=new Student();
    public void oprtStu(int opeCode){
        switch (opeCode){
            case 1://查看学生信息
                opeStu.showStu();break;
            case 2://增加学生信息 学号 姓名 性别 年龄 班级 宿舍
                System.out.print("请依次输入要添加的学生信息:学号,姓名,性别,年龄,班级,宿舍。");
                opeStu.addStu(rader.nextInt(),rader.next(),rader.next(),rader.nextInt(),rader.nextInt(),rader.next());break;//由bug,插不进去息
              //  opeStu.addStu(1,"12","nan",4,1,"4455");break;

            case 3://删除学生信息
               System.out.print("请输入要删除的学号:");
                opeStu.delStu(rader.nextInt());break;
            case 4://修改学生信息
                System.out.print("请依次输入要更改学生的信息:学号,姓名,性别,年龄。");
                opeStu.updStu(rader.nextInt(),rader.next(),rader.next(),rader.nextInt());break;
            case 0://退出系统
                System.exit(0);
            default:
                System.out.println("请重新输入!");
        }

    }
  /*      while (rader.hasNext()) {
        System.out.println("输出:" + rader.next());
    }*/
    public void ui(){
        System.out.println("============欢迎使用学生信息管理系统============");
        System.out.println("\t\t\t查看学生信息请输入:1\t\t\t");
        System.out.println("\t\t\t添加学生信息请输入:2\t\t\t");
        System.out.println("\t\t\t删除学生信息请输入:3\t\t\t");
        System.out.println("\t\t\t更新学生信息请输入:4\t\t\t");
        System.out.println("=============退出系统请输入:0=================");
    }
    public static void main(String[] args) {
        Operate oper=new Operate();

        oper.ui();
        System.out.print("请根据需要的操作输入数字:");
        while (rader.hasNextInt()){
            oper.ui();
            oper.oprtStu(rader.nextInt());
            System.out.print("请继续根据需要的操作输入数字:");
        }
    }
}

(3)部分运行截图

在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值