• 20165321实验一 Java开发环境的熟悉


    一、idea调试:


    二、实验内容:
    4. 实现学生成绩管理功能(增删改,排序,查找),并进行测试(正常情况,异常情况,边界情况)。
    运行截图:




    代码:
    public class Student {
    String name;
    String studentId;
    String sex;
    int grade;

    public Student(String name,String studentId,String sex,int grade){
        this.name= name;
        this.studentId= studentId;
        this.sex = sex;
        this.grade = grade;    
    }
    
    public int getGrade(){
        return grade;
    }
    public String getName(){
        return name;
    }
    
    public String getSex(){
        return sex;
    }
    
    public void setGrade(int g){
        this.grade = g;
    }
    
    public String getStudentId(){
        return studentId;
    }
    

    }

    import java.util.*;
    public class StudentSystem {

    static List<Student> StudentList = new LinkedList<Student>();
    public static void main(String[] agrs){
        
        
        select(StudentList);        
                
    }
    private static void select(List<Student> StudentList ){
        System.out.println("***************");
        System.out.println("*欢迎来到学生管理系统 *");
        System.out.println("*1:增加学生                    *");
        System.out.println("*2:删除学生                    *");
        System.out.println("*3:修改成绩                    *");
        System.out.println("*4:查询成绩                    *");
        System.out.println("***************");
        System.out.println("若要退出系统,请输入1、2、3、4外的其他数字!!!");
        System.out.println("您想选择的操作是:");
        Scanner sc = new Scanner(System.in);
        int choice = sc.nextInt();        
        switch(choice){
        //增加学生
        case 1:
            System.out.print("请输入学生的姓名:");
            Scanner Sname = new Scanner(System.in);
            String name = Sname.nextLine();
            System.out.print("请输入学生的性别:");
            Scanner Ssex = new Scanner(System.in);
            String sex = Ssex.nextLine();
            System.out.print("请输入学生的学号:");
            Scanner SId = new Scanner(System.in);
            String studentId = SId.nextLine();
            System.out.print("请输入学生的成绩:");
            Scanner Sgrade = new Scanner(System.in);
            int grade = Sgrade.nextInt();
            StudentList.add(new Student(name,studentId,sex,grade));
            System.out.println("添加成功!!!");
            select(StudentList);
            break;
        //删除学生成绩
        case 2:
            System.out.print("请告诉我需要删除学生的学号:");
            Scanner Sid = new Scanner(System.in);
            String SstudentId = Sid.nextLine();
            boolean isfindDelete = false;
            for (int i = 0; i < StudentList.size(); i++) {
                if(SstudentId.equals(StudentList.get(i).getStudentId())){
                    StudentList.remove(i);
                    System.out.println("删除成功!!!");
                    isfindDelete =true;
                }
            }
            if(!isfindDelete){
                System.out.println("抱歉,没有找到");
            }
            select(StudentList);
            break;
        //修改学生成绩
        case 3:
            System.out.print("请告诉我需要修改成绩学生的学号:");
            Scanner GId = new Scanner(System.in);
            String GstudentId = GId.nextLine();
            boolean isfindChange = false;
            for (int j = 0; j < StudentList.size(); j++) {
                if(GstudentId.equals(StudentList.get(j).getStudentId())){
                    System.out.println("学生原成绩为"+StudentList.get(j).getGrade());
                    System.out.print("请输入修改后学生的成绩:");
                    Scanner Ggrade = new Scanner(System.in);
                    int grade2 = Ggrade.nextInt();
                    StudentList.get(j).setGrade(grade2);
                    System.out.println("修改成功!!!");
                    isfindChange =true;
                }else{
                    
                }
            }
            if(!isfindChange){
                System.out.println("没有该名学生!");
            }
            select(StudentList);
            break;
        //查看学生成绩
        case 4:
            System.out.print("请告诉我需要查询学生的学号:");
            Scanner CId = new Scanner(System.in);
            String CstudentId = CId.nextLine();
            boolean isfindData = false;
            for (int i = 0; i < StudentList.size(); i++) {
                if(CstudentId.equals(StudentList.get(i).getStudentId())){
                    System.out.println("名字:"+StudentList.get(i).getName());
                    System.out.println("性别:"+StudentList.get(i).getSex());
                    System.out.println("学号:"+StudentList.get(i).getStudentId());
                    System.out.println("成绩:"+StudentList.get(i).getGrade());
                    isfindData = true;
                
                }
            }
            if(!isfindData){
            System.out.println("没有该名学生!");
            }
            select(StudentList);
            break;
        default:
            System.out.println("退出系统!!!");
            break;
        }
        
    }
    

    }

    感想:
      一开始,当我得知我抽到的实验是几乎最难、代码也最长的实验的时候,我还有点丧气。但是,转念一想,以前在学习C语言的时候,我曾经编写过类似的学生成绩管理系统,这次只不过是换了一种语言而已,而且用Java语言来编写这种程序说不定比用C语言来编写还要简单,于是终究还是开始着手写代码。一开始,自然而然地想到创建一个用于存放学生信息的student类,后来,又想到可以把输入信息的函数放进student类里面。一开始我不知道如何删除学生,在参考了一些其他程序之后,终于是写出来。
      由于自己的Java功底还不到家,所以在参考了一部分程序后,才艰难地写出了代码。

    步骤 耗时 百分比
    需求分析 10 4%
    设计 20 8%
    代码实现 180 72%
    测试 10 4%
    分析总结 20 8%
  • 相关阅读:
    Python 多线程、进程
    Python网络编程 Socket编程
    Python基础7 面向对象编程进阶
    Python基础6 面向对象编程
    Python基础5 常用模块学习
    Python基础4 迭代器、装饰器、软件开发规范
    Python基础3 函数、递归、内置函数
    Python基础2 列表 字典 集合
    21-Python-多进程
    20-Python-queue队列
  • 原文地址:https://www.cnblogs.com/xpl20165321/p/8692610.html
Copyright © 2020-2023  润新知