3.3 学生管理系统

需求:

采取控制台的方式区书写学生管理系统

初始菜单:

图片[1]-3.3 学生管理系统-IT熊技术站

学生类:

属性:id,姓名,年龄,家庭住址

添加功能:

键盘录入每一个学生信息并添加,需要满足以下要求:
id唯一

删除功能:

键盘录入要删除的学生id,需要满足以下要求:
id存在删除
id不存在,需要提示不存在,并返回初始菜单

修改功能:

键盘录入要修改的学生id,需要满足以下要求:
id存在,继续录入其他信息
id不存在,需要提示不存在,并返回初始菜单

查询功能:

打印所有的学生信息,需要满足以下要求:
如果没有学生信息,提示:当前无学生信息,请添加后再查询
如果有学生信息,需要按照以下格式输出(不用过于纠结对齐的问题)
 

答案:

[content_hide]

public class student {  
    private int id;  
    private String name;  
    private int age;  
    private String home;  
  
    public student() {  
    }  
    public student(int id, String name, int age, String home) {  
        this.id = id;  
        this.name = name;  
        this.age = age;  
        this.home = home;  
    }  
    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 getHome() {  
        return home;  
    }  
    public void setHome(String home) {  
        this.home = home;  
    }
}
import java.util.ArrayList;  
import java.util.Scanner;  
  
public class IT梦 {  
     public static void main(String[] args) {  
         ArrayList<student> list = new ArrayList<>();  
         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 sc = new Scanner(System.in);  
             String choose = sc.next();  
             switch (choose){  
                 case "1" -> addStudent(list);  
                 case "2" -> deleteStudent(list);  
                 case "3" -> changeStudent(list);  
                 case "4" -> queryStudent(list);  
                 case "5" -> {  
                     System.out.println("谢谢使用,再见");  
                     System.exit(0);
//停止虚拟机运行  

                 }  
                 default -> System.out.println("没有这个选项");  
             }         
	    }     
    }     
	public static void addStudent(ArrayList<student> list){  
         Scanner sc = new Scanner(System.in);  
         student s = new student();  
  
         while (true) {  
             System.out.println("请输入学生的id");  
             int id = sc.nextInt();  
             boolean flag = judgeId(list,id);  
             if(flag){  
                 System.out.println("当前id已存在,请重新输入");  
             }else {  
                 s.setId(id);  
                 break;  
             }         
	    }  
         System.out.println("请输入学生的姓名");  
         String name = sc.next();  
         s.setName(name);  
  
         System.out.println("请输入学生的年龄");  
         int age = sc.nextInt();  
         s.setAge(age);  
  
         System.out.println("请输入学生的家庭住址");  
         String home = sc.next();  
         s.setHome(home);  
         list.add(s);  
         System.out.println("添加成功");  
     }     
     public static void deleteStudent(ArrayList<student> list){  
         Scanner sc = new Scanner(System.in);  
         System.out.println("请输入要删除的学生id");  
         int id = sc.nextInt();  
         int index = getIndex(list, id);  
         if(index >= 0){  
             list.remove(index);  
             System.out.println("id为:" + id + "的学生删除成功");  
         }else {  
             System.out.println("当前id不存在,删除失败");  
         }     
    }    
    public static void changeStudent(ArrayList<student> list){  
        Scanner sc = new Scanner(System.in);  
        System.out.println("请输入要修改的学生id");  
        int id = sc.nextInt();  
        int index = getIndex(list, id);  
        if(index == -1){  
            System.out.println("当前id不存在,请重新输入");  
            return;  
        }        
        student stu = list.get(index);  
        System.out.println("请输入要修改的姓名");  
        String newName = sc.next();  
        stu.setName(newName);  
  
        System.out.println("请输入要修改的年龄");  
        int newAge = sc.nextInt();  
        stu.setAge(newAge);  
  
        System.out.println("请输入要修改的家庭住址");  
        String newHome = sc.next();  
        stu.setHome(newHome);  
  
        System.out.println("id为:" + id + "的学生信息修改成功");  
    }    
    public static void queryStudent(ArrayList<student> list){  
        if(list.size() == 0){  
            System.out.println("当前无学生信息,请添加后在查询");  
            return;  
        }        
        System.out.println("id\t姓名\t年龄\t家庭住址");  
        for (int i = 0; i < list.size(); i++) {  
            student stu = list.get(i);  
            System.out.println(stu.getId() + "\t" + stu.getName() + "\t" + stu.getAge() + "\t" + stu.getHome());  
        }    
	}    
    public static boolean judgeId(ArrayList<student> list,int id){  
        for (int i = 0; i < list.size(); i++) {  
            student stu = list.get(i);  
            if(stu.getId() == id){  
                return true;  
            }        
        }    
         return false;
    }    
    public static int getIndex(ArrayList<student> list,int id){  
        for (int i = 0; i < list.size(); i++) {  
            student stu = list.get(i);  
            if(stu.getId() == id){  
                return i;  
            }        
        }
        return -1;   
    }
}

[/content_hide]

 
 
 
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容