A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 周路路 中级黑马   /  2015-12-11 22:54  /  839 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

测试类
package com.heima03;
import java.util.Comparator;
import java.util.Scanner;
import java.util.TreeSet;

public class TreeSet1 {
public static void main(String[] args) {
//        键盘输入5个学生信息(姓名,语文成绩,数学成绩,英语成绩)按照总分高低排序
        //创建学生类Student
        Scanner sc = new Scanner(System.in);
        System.out.println("请按照格式输入字符");
        TreeSet<Student> ts = new TreeSet<>(new Comparator<Student>() {

                @Override
                public int compare(Student s1, Student s2) {
                        int num = s2.getSum()-s1.getSum();
                        return num==0 ? 1:num;
                }
        });
        while(ts.size()<5) {//TreeSet长度为5
                String line = sc.nextLine();
                String[] arr = line.split(",");//用,切割字符返回一个字符数组
                int chinese = Integer.parseInt(arr[1]);
                int math = Integer.parseInt(arr[2]);
                int english = Integer.parseInt(arr[3]);
                ts.add(new Student(arr[0],chinese,math,english));
        }
        System.out.println("个人信息排名为:");
        for (Student s :ts) {
                System.out.println(s);
        }
}
}
--------------------------------------------------------------
Student类
package com.heima03;

public class Student {
private String name;  //成员变量
private int chinese;
private int math;
private int english;
private int Sum;
public Student() { //空参构造
        super();
       
}
public Student(String name, int chinese, int math, int english) { //有参构造
        super();
        this.name = name;
        this.chinese = chinese;
        this.math = math;
        this.english = english;
        this.Sum=this.chinese+this.math+this.english;
}
public int getSum() {//
        return Sum;
}
@Override
public String toString() {//重写toString()
        return name+","+chinese+","+math+","+english;
}

}


package com.heima03;

public class Student {
private String name;  //成员变量
private int chinese;
private int math;
private int english;
private int Sum;
public Student() { //空参构造
        super();
       
}
public Student(String name, int chinese, int math, int english) { //有参构造
        super();
        this.name = name;
        this.chinese = chinese;
        this.math = math;
        this.english = english;
        this.Sum=this.chinese+this.math+this.english;
}
public int getSum() {//
        return Sum;
}
@Override
public String toString() {//重写toString()
        return name+","+chinese+","+math+","+english;
}

}



CDG3{SUE_KI`A()9%MOY3CY.png (97.61 KB, 下载次数: 73)

输出结果

输出结果

2 个回复

倒序浏览
总结的挺到位的!!!!
回复 使用道具 举报
夜空的星 发表于 2015-12-11 23:10
总结的挺到位的!!!!

thankyou
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马