注册 登录
重磅消息:开通VIP会员,获取平台所有项目,永久使用,详细请咨询QQ:3376762016
远程服务部署安装,售后服务,请加QQ1:3376762016,QQ2:3597230140(即将满员),QQ3:1399491757(已满)
查看: 761|回复: 0
打印 上一主题 下一主题

键盘录入3个学生信息(姓名,语文成绩,数学成绩,英语成绩)

[复制链接]

该用户从未签到

3518

主题

3532

帖子

66万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
668946
QQ
跳转到指定楼层
楼主
发表于 2020-4-9 20:32:40 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

题目:


public class Student {
    private String name;
    private int chinese;
    private int math;
    private int english;

    public Student() {
        super();
    }

    public Student(String name, int chinese, int math, int english) {
        this.name = name;
        this.chinese = chinese;
        this.math = math;
        this.english = english;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getChinese() {
        return chinese;
    }

    public void setChinese(int chinese) {
        this.chinese = chinese;
    }

    public int getMath() {
        return math;
    }

    public void setMath(int math) {
        this.math = math;
    }

    public int getEnglish() {
        return english;
    }

    public void setEnglish(int english) {
        this.english = english;
    }

    public int getTotal(){
        return (this.chinese + this.math + this.english);
    }

    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", chinese=" + chinese +
                ", math=" + math +
                ", english=" + english +
                '}';
    }
}


import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Comparator;
import java.util.Scanner;
import java.util.TreeSet;

public class Demo2 {
    public static void main(String[] args) throws IOException {
        //创建TreeSet集合
        TreeSet<Student> set = new TreeSet<>(new Comparator<Student>() {
            @Override
            public int compare(Student s1, Student s2) {
                int cmp1 =   s2.getTotal() - s1.getTotal();
                int cmp2 = cmp1 == 0 ? s2.getName().compareTo(s1.getName()) : cmp1;
                return cmp2;
            }
        });

        for (int i = 0;i < 3;i++){
            //输入学生信息
                System.out.println("请输入第"+(i+1)+"个学生信息:");
            Scanner sc = new Scanner(System.in);
            System.out.println("姓名:");
            String name = sc.nextLine();
            System.out.println("语文成绩:");
            int chinese = sc.nextInt();
            System.out.println("数学成绩:");
            int math = sc.nextInt();
            System.out.println("英语成绩:");
            int english = sc.nextInt();

            //创建学生对象并录入信息
            Student s = new Student();
            s.setName(name);
            s.setChinese(chinese);
            s.setMath(math);
            s.setEnglish(english);

            //将学生添加到集合里
            set.add(s);
        }

        //3.遍历集合并写入文件
        BufferedWriter writer = new BufferedWriter(new FileWriter("student.txt"));
        String content="";
        for (Student s :set) {
            StringBuilder sb = new StringBuilder("姓名:" + s.getName()  + ", 语文成绩:" + s.getChinese() +
                    ", 数学成绩:" + s.getMath() + ", 英语成绩:" + s.getEnglish());
            writer.write(sb.toString());
            writer.newLine();
            writer.flush();
            content+=sb.toString()+"\n";
        }

        //关闭资源
        writer.close();

        System.out.println("数据写入文件完成");
        System.out.println("文件中的数据如下:");
        System.out.println(content);
    }
}







分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
java无忧网(http://www.javawyw.com),专业提供Java大作业,小作业,课程设计,毕业设计源码,答辩辅导,作业排错,bug修复,专业解答,远程部署运行项目等服务
本网站所有源码,保证能运行!
QQ:1399491757
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回列表 返回顶部