学生管理系统(增删改查)

Java学生管理系统1

Manager类
package StudentSystem;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Manager {
    public static void main(String[] args) {
        List<Student> sm = new ArrayList<>();
        menu:
        while (true) {
            Scanner sc = new Scanner(System.in);
            System.out.println(Util.conker("学生信息管理系统", 30, " "));
            System.out.println(Util.conker("1.添加学生信息", 30, " "));
            System.out.println(Util.conker("2.删除学生信息", 30, " "));
            System.out.println(Util.conker("3.修改学生信息", 30, " "));
            System.out.println(Util.conker("4.查看学生信息", 30, " "));
            System.out.println(Util.conker("退出管理系统", 30, " "));
            int index = sc.nextInt();
            switch (index) {
                case 1:
                    Util.add(sm);
                    break;
                case 2:
                    Util.delete(sm);
                    break;
                case 3:
                    Util.amend(sm);
                    break;
                case 4:
                    Util.examine(sm);
                    break;
                default:
                    System.out.println("退出管理系统");
                    break menu;
            }
        }
    }
}
Student类
package StudentSystem;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Student {
    private int id;
    private String name;
    private String gender;
    private int age;
    private String address;
}
Util类
package StudentSystem;

import java.util.List;
import java.util.Scanner;

public class Util {
    public static void add(List<Student> sm) {
        Scanner sc = new Scanner(System.in);
        Student st = new Student();
        System.out.println("输入学号");
        st.setId(sc.nextInt());
        System.out.println("输入姓名");
        st.setName(sc.next());
        System.out.println("输入性别");
        st.setGender(sc.next());
        System.out.println("输入年龄");
        st.setAge(sc.nextInt());
        System.out.println("输入住址");
        st.setAddress(sc.next());
        sm.add(st);
        try {
            System.out.println("保存...");
        } catch (Exception e) {
            e.printStackTrace();
        }
        System.out.println("学生信息录入成功");
        System.out.println(st.getName());
    }

    public static void examine(List<Student> sm) {
        System.out.println(Util.left("学号", 10) + Util.left("姓名", 10) + Util.left("性别", 10) + Util.left("年龄", 10) + Util.left("住址", 30));
        System.out.println("-".repeat(50));
        sm.forEach(s -> {
            System.out.println(Util.left("" + s.getId(), 10) + Util.left(s.getName(), 10) + Util.left(s.getGender(), 10) + Util.left(String.valueOf(s.getAge()), 10) + Util.left(s.getAddress(), 30));
        });
        System.out.println("-".repeat(50));
        System.out.printf("共有学生人数%d%n", sm.size());
    }

    public static void delete(List<Student> sm) {
        System.out.println(Util.conker("删除", 20, " "));
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入删除学生学号");
        int sno = sc.nextInt();
        boolean f = false;
        for (int i = 0; i < sm.size(); i++) {
            Student st = sm.get(i);
            if (st.getId() == sno) {
                f = true;
                sm.remove(i);
            }
        }
        if (f) {
            System.out.println("删除成功");
        } else {
            System.out.println("删除失败,请检查学号...");
        }
    }

    public static void amend(List<Student> sm) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入要修改学生的学号:");
        int sid = sc.nextInt();
        int index = -1;
        for (int i = 0; i < sm.size(); i++) {
            Student st = sm.get(i);
            if (st.getId() == sid) {
                index = i;
                break;
            }
        }
        if (index != -1) {
            System.out.println("请输入新的学生学号:");
            int id = sc.nextInt();
            System.out.println("请输入新的学生姓名:");
            String name = sc.next();
            System.out.println("请输入新的学生年龄:");
            int age = sc.nextInt();
            System.out.println("请输入新的学生性别:");
            String gender = sc.next();
            System.out.println("请输入新的学生住址:");
            String address = sc.next();
            Student st = new Student();
            st.setId(id);
            st.setName(name);
            st.setAge(age);
            st.setGender(gender);
            st.setAddress(address);
            sm.set(index, st);
            System.out.println("学生信息修改成功");
        } else {
            System.out.println("信息不存在,请检查学号");
        }
    }

    public static String left(String str, int length) {
        return String.format("%-" + length + "s", str);
    }

    public static String right(String str, int length) {
        return String.format("%" + length + "s", str);
    }

    public static String conker(String str, int length, String ch) {
        int size = (length - str.length()) / 2;
        return ch.repeat(size).concat(str).concat(ch.repeat(size));
    }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值