IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 寒假Java学习Day10: -> 正文阅读

[Java知识库]寒假Java学习Day10:

终于完结撒花,用数组写出学生排名的代码也成功做出来了(主要是要定义一个局部变量,而不是在方法全局定义一个变量的问题),完成了学生管理系统的四个功能结束了,以及非常感谢我的朋友的帮助(关键性的突破都是,ID:weixin_52939031)

然后还多增加了最后一个选项,以便于看清楚文档里面存下的内容:

package Day3;

import Day1.dish;

import javax.swing.*;
import java.io.*;
import java.util.*;

public class Stusystem {
   static List<Stu> arrayList = new ArrayList<>(); //存放某个学生的数据
    public static void main(String[] args)
    {

        Scanner s=new Scanner(System.in);
        System.out.println("-----欢迎使用学生管理系统-----");
        menue();
        while(true)
        {
            System.out.println("请输入你要选择的项目:");
            int num=s.nextInt();
            switch (num){
                case 1:
                    WriteIn();
                    break;
                case 2:
                    ReadOut();
                    break;
                case 3:
                    alist();
                    break;
                case 4:
                    nums();
                    break;
                case 5:
                    all();
                case 6:
                    System.out.println("感谢使用学生管理系统");
                    return ;
            }
        }
    }
    //创建一个菜单函数
    public static void menue(){
        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("-------6.退出系统-------------");
    }
    //创建一个写入函数
    public static void WriteIn() {
        Stu student = new Stu();
        Scanner s = new Scanner(System.in);
            File file = new File("student.txt");
            BufferedWriter bw = null;
            int i=0;
            try {
                bw = new BufferedWriter(new FileWriter(file));
                bw.write("学号\t姓名\tja\tpy\tc\t总分");
                bw.newLine();
                while (true) {
                    System.out.println("请输入学生id");
                    int id = s.nextInt();
                    student.id = id;
                    System.out.println("请输入学生姓名");
                    String name = s.next();
                    student.name = name;
                    System.out.println("请输入学生的java成绩");
                    int java = s.nextInt();
                    student.java = java;
                    System.out.println("请输入学生的python成绩");
                    int python = s.nextInt();
                    student.python = python;
                    System.out.println("请输入学生的c语言成绩");
                    int c = s.nextInt();
                    student.c = c;
                    float sum = (java + python + c) / 3;
                    student.sum=sum;
                bw.write(student.id + "\t");
                bw.write(student.name + "\t");
                bw.write(student.java + "\t");
                bw.write(student.python + "\t");
                bw.write(student.c + "\t");
                bw.write(student.sum+ "\t");
                bw.flush();
                bw.newLine();
                    System.out.println("是否继续录入信息,0");
                    int answer=s.nextInt();
                    if(answer==0)

                        break;}
            } catch (IOException e) {
                e.printStackTrace();
            }//扑获异常
            finally {
                if (bw != null) {
                    try {
                        bw.close();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                }
            }

        }

    //查找学生的成绩
    public static void ReadOut()  {
        Scanner s=new Scanner(System.in);
        System.out.println("请输入要查询的学生姓名");
        String name=s.next();
        BufferedReader br=null;
        try {

            br=new BufferedReader(new FileReader("C:\\Users\\86130\\IdeaProjects\\text2\\student.txt"));
            String temp;
            while((temp= br.readLine())!=null){
                String a[]=temp.split("\t");
                if(a[1].equals(name)){
                    System.out.println("您的信息已经找到:");
                    System.out.println(temp);
                }

            }
//


        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }


    }

    public static void nums(){
        int nums=0;
        BufferedReader br=null;
        try {
            br=new BufferedReader(new FileReader("C:\\Users\\86130\\IdeaProjects\\text2\\student.txt"));
            String temp;
            int count = 0;
            while((temp= br.readLine())!=null){
                count+=1;
            }
            System.out.println("总共文档里面有"+(count-1)+"个学生");
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
    //输出输入进的信息
    public static void all(){
        String temp;
        BufferedReader br=null;
        try {
            br=new BufferedReader(new FileReader("C:\\Users\\86130\\IdeaProjects\\text2\\student.txt"));
            while((temp= br.readLine())!=null){
                System.out.println(temp);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
    //输出学生成绩排名
    public static void alist(){
        BufferedReader br=null;
        String temp;
        Stu change= new Stu();
        Stu [] ap=new Stu[1000];
        int i=0,j=0;

        System.out.println("学生成绩排名");
        System.out.println("排名\t\t姓名\tja\tpy\tc\t");
        int len=1;
        for(i=0;i<1000;i++)
        {
            ap[i]=new Stu();
        }
        i=0;
        try {
            br=new BufferedReader(new FileReader("C:\\Users\\86130\\IdeaProjects\\text2\\student.txt"));
            while((temp= br.readLine())!=null){
                String a[]=temp.split("\t");
                if(i==0)
                {
                    i=1;
                    continue;
                }
                Stu student = new Stu();
                student.id= Integer.parseInt(a[0].trim());
                student.name=a[1];
                student.java= Integer.parseInt(a[2].trim());
                student.python=Integer.parseInt(a[3].trim());
                student.c=Integer.parseInt(a[4].trim());
                student.sum=Double.parseDouble(a[5].trim());
                ap[i++]=student;
                len++;
        }
            for(i=1;i<len;i++)
            {
                for(j=i;j<len;j++)
                {
                    if(ap[i].sum<ap[j].sum)
                    {
                        change=ap[i];
                        ap[i]=ap[j];
                        ap[j]=change;
                    }
                }
            }
            for(i=1;i<len;i++)
            {
                System.out.println("第"+(i)+"名"+"\t"+ap[i].name+"\t"+ap[i].java+"\t"+ap[i].python+"\t"+ap[i].c);
            }

    } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }}
        public static void list(){
        BufferedReader br=null;
        String temp;
        int i=0;
        System.out.println("学生成绩排名");
        try {

            br=new BufferedReader(new FileReader("C:\\Users\\86130\\IdeaProjects\\text2\\student.txt"));
            while((temp= br.readLine())!=null){
                String a[]=temp.split("\t");
                if(i==0)
                {
                    i++;
                    continue;
                }
                // 保存一个学生的数据
                Stu stu = new Stu(Integer.parseInt(a[0].trim()), a[1], Integer.parseInt(a[2].trim()),
                                 Integer.parseInt(a[3].trim()), Integer.parseInt(a[4].trim()), Double.parseDouble(a[5].trim()));
                arrayList.add(stu); //添加到集合中
            }
            Collections.sort(arrayList); //排序
            i=0;
            System.out.println("排名\t\t学号\t姓名\tja\tpy\tc\t总分");
            // 遍历输出有序集合
            for (Stu stu : arrayList) {
                i++;
                System.out.println("第"+i+"名"+"\t"+stu.id + "\t" + stu.name + "\t" + stu.java + "\t" + stu.python + "\t" + stu.c + "\t" + stu.sum);
            }


        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

}
//对象


package Day3;

public class Stu implements Comparable<Stu>{
    //创建一个学生的类
    int id;
    String name;
    int java;
    int python;
    int c;
    double sum;

    //构造器
    public Stu(int id, String name, int java, int python, int c, double sum) {
        this.id = id;
        this.name = name;
        this.java = java;
        this.python = python;
        this.c = c;
        this.sum = sum;
    }

    public Stu() {
    }

    // 按学生的总成绩降序排序  重写sort方法
    public int compareTo(Stu student) {
        return (int)( student.sum - this.sum);
    }


}

?

?

最后其实这个系统还是有很多我没做到的功能以及我的系统里面出现的问题(例如每次写文档都是新的开始,不能保存以前的旧数据)。但还是先告一段落,后面再继续巩固基础回头再做完善一点吧。

?

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-01-29 22:56:59  更:2022-01-29 22:58:00 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:20:29-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码