栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java基础6-2学生管理系统案例

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java基础6-2学生管理系统案例

import java.util.Iterator;
import java.util.LinkedList;
import java.util.Scanner;

public class StudentSystem {
    private static final Scanner s = new Scanner(System.in);
    private static LinkedList studentList = new LinkedList();  //用集合保存学生数据
    private static LinkedList idStudent = new LinkedList();  //这个集合只负责保存学生id

    //系统页面功能
    private static void functionPage() {
        System.out.println("-----------1、增加学生-----------");
        System.out.println("-----------2、查询学生-----------");
        System.out.println("-----------3、删除学生-----------");
        System.out.println("-----------4、修改学生-----------");
        System.out.println("-----------0、退出系统-----------");
        System.out.print("请输入:");
    }

    //增加学生
    private static void addStudent() {
        System.out.print("请输入学号:");
        String id = s.next();
        Iterator it = idStudent.iterator();  //用另一个集合判断学生id是否存在,就是遍历另一个集合
        while (it.hasNext()) {
            Object studentId = it.next();
            if (studentId.equals(id)) {
                System.out.println("学号已存在,请重新输入!");
                return;
            }
        }
        idStudent.add(id);  //另一个集合只保存学生id,这样才可以判断学号是否冲突
        System.out.print("请输入姓名:");
        String name = s.next();
        System.out.print("请输入年龄:");
        int age = s.nextInt();
        System.out.print("请输入基本信息:");
        String info = s.next();
        studentList.add(new StudentAttributes(id, name, age, info));
        System.out.println("学生信息添加成功!!");
    }

    //查询学生
    private static void studentShowInfo() {
        //判断集合是否为空
        if (studentList.isEmpty()) {
            System.out.println("暂时还没学生~");
        } else {
            System.out.println("全部学生信息如下:");
            int count = 0;
            for (Object sl : studentList) {
                System.out.print("编号(" + (++count) + "):");
                System.out.println(sl);
            }
        }
    }

    //删除学生
    private static void delStudent() {
        //判断集合是否为空
        if (studentList.isEmpty()) {
            System.out.println("暂时还没学生~");
        } else {
            System.out.print("请输入要删除学生学号/0退出:");
            String id = s.next();
            if (id.equals("0")) {
                System.out.println("已取消!");
                return;
            } else {
                Iterator it = idStudent.iterator();
                int count = 0;
                while (it.hasNext()) {
                    count++;
                    Object idStu = it.next();
                    if (idStu.equals(id)) {
                        studentList.remove(count - 1);
                        idStudent.remove(count - 1);  //这个写法用于遍历我要删除一次就行,后面元素就不在遍历,因为执行完后就return了
//                        it.remove();  //这个用于遍历集合所有元素,满足条件就全部删除
                        System.out.println("删除成功!!");
                        return;
                    }
                }
                System.out.println("没找到该学生学号!");
            }
        }
    }

    //修改学生
    private static void modifyStudent() {
        if (studentList.isEmpty()) {
            System.out.println("暂时还没学生~");
        } else {
            System.out.print("请输入要修改学生学号/0退出:");
            String id = s.next();
            if (id.equals("0")) {
                System.out.println("已取消!");
                return;
            } else {
                Iterator it = idStudent.iterator();
                int count = 0;
                while (it.hasNext()) {
                    count++;
                    Object idStu = it.next();
                    if (idStu.equals(id)) {
                        System.out.println("该学生信息为:" + studentList.get(count - 1));
                        System.out.print("请输入修改学号:");
                        String stuId = s.next();
                        System.out.print("请输入修改姓名:");
                        String name = s.next();
                        System.out.print("请输入修改年龄:");
                        int age = s.nextInt();
                        System.out.print("请输入修改基本信息:");
                        String info = s.next();
                        studentList.set(count - 1, new StudentAttributes(stuId, name, age, info));
                        System.out.println("学生信息修改功!!");
                        return;
                    }
                }
                System.out.println("没找到该学生学号!");
            }
        }
    }

    //退出系统功能
    private static void exit() {
        System.out.println("感谢使用~");
    }


    public static void main(String[] args) {
        while (true) {
            functionPage();
            int key = s.nextInt();
            switch (key) {
                case 1:
                    addStudent();  //增加学生
                    break;
                case 2:
                    studentShowInfo();  //查询学生
                    break;
                case 3:
                    delStudent();  //删除学生
                    break;
                case 4:
                    modifyStudent();  //修改学生
                    break;
                case 0:
                    exit();   //退出学生系统函数
                    return;
                default:
                    System.out.println("输入错误!!请重新输入");
                    break;
            }
        }
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/966678.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号