Java实现简单学生信息系统

Java实现简单学生信息系统,第1张

文章目录
    • 功能简介
      • 1.添加学生信息
      • 2.删除学生信息
      • 3.修改学生信息
      • 4.查看所有学生信息
      • 5.退出系统
    • 总结

功能简介

学生信息存储学号,姓名,年龄以及所在地
功能:
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生信息
5 退出
添加学生时可以判断是否输入重复的学号;删除学生信息时需要判断学号是否存在。
简单演示:

1.添加学生信息


当已经添加了001之后,继续添加时会提示学号重复。

2.删除学生信息


删除001,查看一下结果

只有002的信息,说明001已经被删除。
当删除的学号不存在时

3.修改学生信息


将002的学生姓名等进行修改,最后显示一下,成功。

4.查看所有学生信息


这个功能比较简单

5.退出系统


源代码:
Student类

public class Stu1 {
    String id;
    String name;
    String age;
    String part;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAge() {
        return age;
    }

    public void setAge(String age) {
        this.age = age;
    }

    public String getPart() {
        return part;
    }

    public void setPart(String part) {
        this.part = part;
    }

    public Stu1(String id,String name,String age,String part) {
        this.age=age;
        this.name = name;
        this.id=id;
        this.part=part;
    }
}

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

public class Manager {
    public static void main(String[] args) {

        ArrayList<Stu1> stu = new ArrayList<>();
        System.out.println("欢迎使用!");

        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("请输入你的选择");
            Scanner in = new Scanner(System.in);
            int a = in.nextInt();
            switch (a) {
                case 1:
                    //System.out.println("添加学生");
                    AddStudent(stu);
                    break;
                case 2:
                    //System.out.println("删除学生");
                    Studelete(stu);
                    break;
                case 3:
                    //System.out.println("修改学生");
                    ResetStu(stu);
                    break;
                case 4:

                    //System.out.println("查看所有学生信息");
                    StuShow(stu);
                    break;
                case 5:
                    System.out.println("谢谢使用");
                    //break;
                    System.exit(0);//jvm退出
            }
        }



    }


    //添加学生信息,键盘输入然后加入ArrayList中
    public static void AddStudent(ArrayList<Stu1> stu) {
        Scanner in = new Scanner(System.in);
        String id;

        while (true) {
            System.out.println("请输入学号:");
            id = in.nextLine();
            boolean flag = Repeat(stu, id);
            if (flag) {
                System.out.println("学号重复,请重新输入");
            } else
                break;
        }


        System.out.println("请输入姓名:");
        String name = in.nextLine();
        System.out.println("请输入年龄:");
        String age = in.nextLine();
        System.out.println("请输入地域:");
        String part = in.nextLine();
        //将录入的信息加入Stu1这个类,然后加入到ArrayList中
        Stu1 s1 = new Stu1(id,name,age,part);
        //添加到集合里
        stu.add(s1);
        System.out.println("添加成功");


    }


    public static boolean Repeat(ArrayList<Stu1> stu,String id){
        boolean flag = false;
        for(int i=0;i< stu.size();i++)
        {
            Stu1 s = stu.get(i);
            if(s.getId().equals(id))
            {flag = true;
                break;}
        }
        return flag;
    }


    //查看学生信息
    public static void StuShow(ArrayList<Stu1> stu){

        if(stu.size()==0)
            System.out.println("请先添加学生信息");
        else

        {System.out.println("学号\t姓名\t年龄\t居住地");
        //循环输出所有学生信息
        for(int i=0;i<stu.size();i++)
        {
            Stu1 s = stu.get(i);
            System.out.println(s.getId()+"\t"+s.getName()+"\t"+s.getAge()+"\t"+s.getPart());
        }
        }
    }

    //删除学生信息
    public static void Studelete(ArrayList<Stu1> stu){
        System.out.println("请选择要删除的学生学号");
        Scanner in = new Scanner(System.in);
        String s = in.nextLine();
        //先设置一个flag用来判断要删除的学号是否存在
        int flag = -1;
        for(int i=0;i<stu.size();i++) {
            //新建学生对象s1得到集合中的元素
            Stu1 s1 = stu.get(i);
            if(s1.getId().equals(s)) {
                stu.remove(i);
                flag=1;
                break;
            }

        }
        if(flag==1)
            System.out.println("删除成功");
        else
            System.out.println("你所删除的学生学号不存在");

    }


    //修改学生信息
    public static void ResetStu(ArrayList<Stu1> stu){
        Scanner in = new Scanner(System.in);
        System.out.println("输入需要修改的学生学号");
        String id = in.nextLine();
        System.out.println("输入新姓名");
        String name = in.nextLine();
        System.out.println("输入新年龄");
        String age = in.nextLine();
        System.out.println("输入新地区");
        String part = in.nextLine();
        //先存储信息
        Stu1 sc = new Stu1(id,name,age,part);
        //在stu中遍历,找到对应的进行修改
        for(int i=0;i<stu.size();i++)
        {
            Stu1 s1 = stu.get(i);
            if(s1.getId().equals(id))
            {
                //用set方法进行修改
                stu.set(i,sc);
                break;
            }
        }
        System.out.println("修改成功");

    }


}

总结

有一些需要注意的地方吧。
比如,怎么将新输入的学生信息进行修改,需要新建对象,再将对应的值修改到集合中对应的位置,往集合中添加元素也是类似的 *** 作。
还有对于不存在的学号的删除,需要定义flag来判断是否学号存在。
再有就是学号重复问题,当判断学号重复之后,要再输出提示信息,输入新的学号,就要循环。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/719601.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-25
下一篇 2022-04-25

发表评论

登录后才能评论

评论列表(0条)

保存