Java LinkedList实现班级信息管理系统

 更新时间:2022年02月25日 09:40:32   作者:大菜彩  
这篇文章主要为大家详细介绍了Java LinkedList实现班级信息管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

LinkedList实现班级信息管理系统,供大家参考,具体内容如下

代码如下:

import java.util.*;
public class Demo2 {
    public static void main(String[] args) 
    {
        Manage1 M = new Manage1();
        Scanner reader = new Scanner(System.in);
        while (true) {
            System.out.println("0.加载原有信息");
            System.out.println("1.添加学生信息");
            System.out.println("2.根据信学号查看学生信息");
            System.out.println("3.修改学生综合考评成绩");
            System.out.println("4.删除学生信息");
            System.out.println("5.根据综合考评排名");
            System.out.println("6.打印所有学生的信息");
            System.out.println("7.退出系统");
            System.out.print("请输入您选择的功能【0~7】:");
            int x;
            x = reader.nextInt();
            switch (x) {
            case 0:
                Student f = new Student("2018", "李小龙", 23, '男', 98.56);
                Student g = new Student("2019", "鱼幼薇", 31, '女', 77.42);
                Student h = new Student("2020", "季长风", 17, '男', 85.56);
                Student o = new Student("2021", "轩辕辰", 12, '男', 56.42);
                Student p = new Student("2022", "徐凤年", 25, '男', 95.01);
                M.addStudent(f);
                M.addStudent(g);
                M.addStudent(h);
                M.addStudent(o);
                M.addStudent(p);
                System.out.println("加载信息成功!");
                break;
            case 1:
                String id;
                String name;
                int age;
                char sex;
                double result;
                System.out.println("请输入学生学号 姓名 年龄 性别 综合考评成绩(中间以空格隔开):");
                id = reader.next();
                // System.out.println("请输入学生姓名:");
                name = reader.next();
                // System.out.println("请输入学生年龄:");
                age = reader.nextInt();
                // System.out.println("请输入学生性别:");
                sex = reader.next().charAt(0);
                // System.out.println("请输入学生学综合考评成绩:");
                result = reader.nextDouble();
                Student e = new Student(id, name, age, sex, result);
                M.addStudent(e);
                System.out.println("添加学生信息成功!");
                break;
            case 2:
                System.out.println("输入您要查询的学号:");
                String idd = reader.next();
                M.findinfo(idd);
                break;
            case 3:
                System.out.println("输入您要改动学生的学号:");
                String iddd = reader.next();
                System.out.println("输入您要改成的目的综合考评:");
                double resultt = reader.nextDouble();
                M.change(iddd, resultt);
                break;
            case 4:
                System.out.println("输入您要删除学生的学号:");
                String idddd = reader.next();
                M.deleteStu(idddd);
                break;
            case 5:
                M.sort();
                System.out.println("排序成功!");
                M.PrintInfo();
                break;
            case 6:
                M.PrintInfo();
                break;
            case 7:
                System.out.println("程序已经运行结束,下次见!");
                System.exit(0);
                break;
            case 8:
                System.out.println("数字在1~7之间!");
                break;

            }
        }
    }
}
//管理学生类
class Manage1
{
    LinkedList l=null;
    public Manage1()
    {
        l=new LinkedList();
    }
    //添加学生信息
    public void addStudent(Student e)
    {
        l.add(e);
    }
    //根据信学号查看学生信息
    public void findinfo(String id)
    {
        for(int i=0;i<l.size();i++)
        {
            Student temp=(Student) l.get(i);
            if(id.equals(temp.getId()))
            {
                System.out.println("学号:"+temp.getId()+"      姓名:"+temp.getName()+"         年龄:"+temp.getAge()+"      性别:"+temp.getSex()+"         综合考评成绩:"+temp.getResult());
            }
        }
    }
    //修改学生综合考评成绩
    public void change(String id,double resultt)
    {
        for(int i=0;i<l.size();i++)
        {
            Student temp=(Student) l.get(i);
            if(id.equals(temp.getId()))
            {
                System.out.println("原有信息:");
                System.out.println("学号:"+temp.getId()+"      姓名:"+temp.getName()+"         年龄:"+temp.getAge()+"      性别:"+temp.getSex()+"         综合考评成绩:"+temp.getResult());
            }
        }
        for(int i=0;i<l.size();i++)
        {
            Student temp=(Student) l.get(i);
            if(id.equals(temp.getId()))
            {
                System.out.println("最终信息:");
                temp.setResult(resultt);
                System.out.println("学号:"+temp.getId()+"      姓名:"+temp.getName()+"         年龄:"+temp.getAge()+"      性别:"+temp.getSex()+"         综合考评成绩:"+temp.getResult());
            }
        }
    }
    //删除学生信息
    public void deleteStu(String id)
    {
        for(int i=0;i<l.size();i++)
        {
            Student temp=(Student) l.get(i);
            if(id.equals(temp.getId()))
            {
                l.remove(i);
            }
        }
        System.out.println("删除信息成功!");
    }
    //根据综合考评排名
    public void sort()
    {
        String tempid;
        String tempname;
        int tempage;
        char tempsex;
        double tempresult;
        for(int i=0;i<l.size()-1;i++)
        {
            Student x=(Student) l.get(i);
            for(int j=i+1;j<l.size();j++)
            {
                Student y=(Student) l.get(j);
                {
                if(x.getResult()<y.getResult())
                {
                    tempid=x.getId();
                    x.setId(y.getId());
                    y.setId(tempid);
                    
                    tempname=x.getName();
                    x.setName(y.getName());
                    y.setName(tempname);
                    
                    tempage=x.getAge();
                    x.setAge(y.getAge());
                    y.setAge(tempage);
                    
                    tempsex=x.getSex();
                    x.setSex(y.getSex());
                    y.setSex(tempsex);
                    
                    tempresult=x.getResult();
                    x.setResult(y.getResult());
                    y.setResult(tempresult);
                }
                }
            }
        }
    }
    //打印所有学生的信息
    public void PrintInfo()
    {
        for(int i=0;i<l.size();i++)
        {
            Student temp=(Student) l.get(i);
            System.out.println("学号:"+temp.getId()+"      姓名:"+temp.getName()+"         年龄:"+temp.getAge()+"      性别:"+temp.getSex()+"         综合考评成绩:"+temp.getResult());
        }
    }
}

运行示例:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • springboot使JUL实现日志管理功能

    springboot使JUL实现日志管理功能

    这篇文章主要介绍了springboot使JUL实现日志管理功能,本文分步骤给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • idea中定时及多数据源配置方法

    idea中定时及多数据源配置方法

    因项目要求,需要定时从达梦数据库中取数据,并插入或更新到ORACLE数据库中,这篇文章主要介绍了idea中定时及多数据源配置方法,需要的朋友可以参考下
    2023-12-12
  • spring异步service中处理线程数限制详解

    spring异步service中处理线程数限制详解

    这篇文章主要给大家介绍了关于spring异步service中处理线程数限制的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用spring具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • 在Spring Boot中实现文件上传与管理的操作

    在Spring Boot中实现文件上传与管理的操作

    在 Spring Boot 中实现文件上传与管理非常简单,通过配置文件上传、创建文件上传、下载、列表和删除接口,我们可以轻松地处理文件操作,结合前端页面,可以提供一个完整的文件管理系统,这篇文章主要介绍了在Spring Boot中实现文件上传与管理,需要的朋友可以参考下
    2024-07-07
  • Spring Boot实现JWT token自动续期的实现

    Spring Boot实现JWT token自动续期的实现

    本文主要介绍了Spring Boot实现JWT token自动续期,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • IDEA 2023创建JSP项目的完整步骤教程

    IDEA 2023创建JSP项目的完整步骤教程

    这篇文章主要介绍了IDEA 2023创建JSP项目的完整步骤教程,创建项目需要经过新建项目、设置项目名称和路径、选择JDK版本、添加模块和工件、配置Tomcat服务器等步骤,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2024-10-10
  • SpringBoot实现各种参数校验总结(建议收藏!)

    SpringBoot实现各种参数校验总结(建议收藏!)

    本文深入解析了Spring Validation的使用方法、实现原理及最佳实践,详细介绍了各种参数校验场景,如requestBody和requestParam/PathVariable的使用,并探讨了分组校验、嵌套校验和自定义校验的高级应用,需要的朋友可以参考下
    2024-09-09
  • Java 继承方法实例详解

    Java 继承方法实例详解

    这篇文章主要介绍了Java继承中方法实例,非常的实用,这里推荐给大家,有需要的小伙伴可以参考下
    2017-04-04
  • java使用异或对文件进行加密解密

    java使用异或对文件进行加密解密

    这篇文章主要为大家详细介绍了java使用异或方式对文件进行加密解密,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-03-03
  • Java多线程Callable接口实现代码示例

    Java多线程Callable接口实现代码示例

    相信大家对Java编程中如何创建线程已经不陌生了,这篇文章就向朋友们介绍实现callable接口,具体实例详见正文。
    2017-10-10

最新评论