学生管理系统初级

根据题目要求生成大纲

总结:

1.在书写时,考虑到了书写时id可是是abc... 类型是String,但在根据id获取集合中元素时 list.get() ,get()里面是int类型。 2.在书写还有一点功能并不完全,

2.1查找时是打印所有学生信息,并不能根据输入关键信息打印相应学生

2.2修改时,是所有信息都要修改,并没有实现,只修改某一个或几个信息。

代码:

public class Studenttext {
    public static void main(String[] args) {
        ArrayList<Student> list=new ArrayList<>();
        Scanner sc=new Scanner(System.in);
        int number;
        boolean flag=true;
        while (flag) {
            System.out.println("请选择你要的功能:1.添加,2.删除,3.修改,4.查找,5.退出");
            number=sc.nextInt();
            switch (number){
                case 1 -> add(list);
                case 2->delete(list);
                case 3->adapt(list);
                case 4-> reaserach(list);
                default -> flag=false;
            }
        }
    }
    //添加
    public static void  add( ArrayList<Student> list){
        Scanner sc=new Scanner(System.in);
        Student s=new Student();
        System.out.println("请输入学生id");
        String sid=sc.next();
        boolean result = contains(list, sid);
        if (result) {
            System.out.println("该id已经存在");
        }
        s.setId(sid);
        System.out.println("请输入学生姓名");
        String name=sc.next();
        s.setName(name);
        System.out.println("请输入学生年龄");
        int age=sc.nextInt();
        s.setage(age);
        System.out.println("请输入学生家庭住址");
        String adress=sc.next();
        s.setAdress(adress);
        list.add(s);
        System.out.println("已经添加成功");
        //进行id唯一

    }
    //删除
    public static void  delete( ArrayList<Student> list){
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入要删除的id");
        String sid=sc.next();
        int id=getindex(list,sid);

        if (id>=0) {
            //true就存在
            list.remove(id);
            System.out.println(list.size());
            System.out.println("删除成功");
        }else {
            //不存在
            System.out.println("id不存在");
        }

    }//修改
    public static void  adapt( ArrayList<Student> list){
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入要修改的id");
        String id=sc.next();
        int index=getindex(list,id);
        if (index>=0) {
            Student s=list.get(index);
            System.out.println("请输入新的名字");
            String Newname=sc.next();
            s.setName(Newname);
            System.out.println("请输入新的年龄");
            int Newage=sc.nextInt();
            s.setage(Newage);
            System.out.println("请输入新的家庭住址");
            String Newadress=sc.next();
            s.setAdress(Newadress);
            System.out.println("修改成功");
        }else {
            System.out.println(id+"不存在 ,更新失败");
        }

    }//查找
    public static void  reaserach( ArrayList<Student> list){
        if (list.size()!=0) {
            //返回true就代表存在
             System.out.println("---------代军的学生管理系统------------");
             System.out.println("id\tname\tage\tadress");
            for (int i = 0; i < list.size(); i++) {
                Student s = list.get(i);
                System.out.println(s.getId()+"\t"+s.getName()+"\t"+s.getage()+"\t"+s.getAdress());
            }

        }else {
            //如果不存在,提示当前无学生信息,请添加后在查询
            System.out.println("当前无学生信息,请添加后在查询");

        }


    }
    //进行id唯一,不存在返回flase
    public static boolean contains(ArrayList<Student> list,String id){
        return getindex(list,id)>=0;
    }
    //查找id的学生,根据id查找
    //不存在返回-1
    public static int  getindex(ArrayList<Student> list,String id){
        for (int i = 0; i < list.size(); i++) {
            String sut_id=list.get(i).getId();
            //存在就返回true
            if (sut_id.equals(id)) {
                return i;
            }
        }return -1;
    }

}

相关推荐

  1. 学生寝室管理系统

    2024-05-10 12:46:03       48 阅读
  2. 学生管理系统——2

    2024-05-10 12:46:03       47 阅读
  3. 学生管理系统代码

    2024-05-10 12:46:03       23 阅读
  4. 【Python】学生管理系统

    2024-05-10 12:46:03       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-10 12:46:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-10 12:46:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-05-10 12:46:03       87 阅读
  4. Python语言-面向对象

    2024-05-10 12:46:03       96 阅读

热门阅读

  1. 设计模式——观察者模式(Observer)

    2024-05-10 12:46:03       32 阅读
  2. 责任链模式案例

    2024-05-10 12:46:03       31 阅读
  3. Linux下添加自己的服务脚本(service)

    2024-05-10 12:46:03       35 阅读
  4. 路由发布中的前缀列表的使用方法 ip prefix-list

    2024-05-10 12:46:03       22 阅读
  5. SSL证书签发错误怎么回事?

    2024-05-10 12:46:03       27 阅读
  6. Unity编辑器扩展

    2024-05-10 12:46:03       29 阅读
  7. uniapp:项目目录下没有package.json文件的创建办法

    2024-05-10 12:46:03       30 阅读
  8. 【设计模式】之适配器模式

    2024-05-10 12:46:03       32 阅读
  9. 如何在Linux环境下运行Excel的VBA宏文件

    2024-05-10 12:46:03       34 阅读
  10. C++(函数高级)

    2024-05-10 12:46:03       29 阅读