Java编写控制台学生信息管理系统

作为学习过程中的一个记录,使用Java编写了一个控制台版学生管理系统。需求文档来自黑马程序员教程,同时本人基于此按自己的思路独立编写完成该系统。仅在文中记录代码,详情可观看前面所提教程中相应部分。
本文仅供学习交流。
主要功能:用户登录、用户注册、找回密码;添加学生、查询学生(查询所有、根据ID查询)、删除学生、修改学生。

1、用户信息JavaBean类

package StudentManageSystem;

// 系统用户信息JavaBean类
public class User {
   
    // 用户名
    private String username;
    // 用户密码
    private String password;
    // 用户身份证账号
    private String ID;
    // 电话号码
    private String phoneNumber;

    public User() {
   
    }

    public User(String username, String password, String ID, String phoneNumber) {
   
        this.username = username;
        this.password = password;
        this.ID = ID;
        this.phoneNumber = phoneNumber;
    }

    public String getUsername() {
   
        return username;
    }

    public void setUsername(String username) {
   
        this.username = username;
    }

    public String getPassword() {
   
        return password;
    }

    public void setPassword(String password) {
   
        this.password = password;
    }

    public String getID() {
   
        return ID;
    }

    public void setID(String ID) {
   
        this.ID = ID;
    }

    public String getPhoneNumber() {
   
        return phoneNumber;
    }

    public void setPhoneNumber(String phoneNumber) {
   
        this.phoneNumber = phoneNumber;
    }

    @Override
    public String toString() {
   
        return "User{" +
                "username='" + username + '\'' +
                ", password='" + password + '\'' +
                ", ID='" + ID + '\'' +
                ", phoneNumber='" + phoneNumber + '\'' +
                '}';
    }
}

2、学生信息JavaBean类

package StudentManageSystem;

// 学生信息JavaBean类
public class StudentInfo {
   
    // 学生编号
    private int ID;
    // 学生姓名
    private String name;
    // 学生年龄
    private int age;
    // 学生住址
    private String address;

    public StudentInfo() {
   
    }

    public StudentInfo(int ID, String name, int age, String address) {
   
        this.ID = ID;
        this.name = name;
        this.age = age;
        this.address = address;
    }

    public int getID() {
   
        return ID;
    }

    public void setID(int ID) {
   
        this.ID = ID;
    }

    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 getAddress() {
   
        return address;
    }

    public void setAddress(String address) {
   
        this.address = address;
    }

    @Override
    public String toString() {
   
        return "StudentInfo{" +
                "ID=" + ID +
                ", name='" + name + '\'' +
                ", age=" + age +
                ", address='" + address + '\'' +
                '}';
    }
}

3、测试类(主类)

package StudentManageSystem;

import java.util.ArrayList;
import java.util.Random;
import java.util.Scanner;

// 测试类
public class Menu {
   
    // 学生信息列表
    private static ArrayList<StudentInfo> students;
    // 系统用户列表
    private static ArrayList<User> users;

    // 主方法
    public static void main(String[] args) {
   
        // 初始化
        students = new ArrayList<>();
        users = new ArrayList<>();

        // 添加一个管理员用户
        User user = new User("admin", "123456", "123456789123456789", "12345678911");
        users.add(user);

        // 添加3个默认学生
        StudentInfo student1 = new StudentInfo(1, "小刘", 22, "北京");
        StudentInfo student2 = new StudentInfo(2, "小张", 21, "上海");
        StudentInfo student3 = new StudentInfo(3, "小王", 23, "重庆");
        students.add(student1);
        students.add(student2);
        students.add(student3);

        // 进入登录菜单
        loginMenu();
    }

    // 登录相关菜单
    public static void loginMenu(){
   
        Scanner sc = new Scanner(System.in);

        // 循环登录菜单
        while (true){
   
            System.out.println("---欢迎来到学生管理系统---");
            System.out.println("1: 登录");
            System.out.println("2: 注册");
            System.out.println("3: 找回密码");
            System.out.println("4: 退出系统");
            System.out.println("----------------------");
            System.out.println("请选择(1-3): ");

            // 根据输入数字,调用不同函数,实现不同功能
            String choice = sc.next();
            switch (choice) {
   
                case "1" -> login();
                case "2" -> register();
                case "3" -> forgetPassword();
                case "4" -> {
   
                    System.out.println("系统退出。");
                    System.exit(0)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值