/**实现Comparable接口正确0.5分,无泛型不得分*/ public class Worker implements Comparable<Worker> { /**声明三个私有属性 -->0.5分*/ private String name;//姓名 private int age;//年龄 private double salary;//薪水 //取值,赋值的方法à省略 /**带参与无参构造方法编写正确 -->0.5分*/ //带参构造方法 public Worker(String name, int age, double salary) { super(); this.name = name; this.age = age; this.salary = salary; } //无参构造方法 public Worker() { super(); } /**重写compareTo方法共2分*/ @Override public int compareTo(Worker o) { if (this.age>o.getAge()) { return 1; //0.5分 }else if (this.age<o.getAge()) { return -1; //0.5分 } return this.name.compareTo(o.getName());//1分 } @Override//0.5分 public String toString() { return name+"\t"+age+"\t"+salary; } |
Test测试类
public class Test { public static void main(String[] args) { //创建集合对象 Set<Worker> set=new TreeSet<Worker>();/**0.5分*/ //添加数据 set.add(new Worker("zhang", 28, 900.00));/**0.5分*/ set.add(new Worker("wang",28,890.00)); set.add(new Worker("li",19,780.00)); //遍历输出 System.out.println("姓名\t年龄\t薪水"); for (Worker w:set) { /**1分*/ System.out.println(w); } } } |