package sort.col;
/**
-
Worker:工人,员工
*/
public class Worker implements java.lang.Comparable{private String type;//工种
private double salary;//工资//注意:这里添加set与get方法;前面Person类里面的属性必须加final;否则无法添加set与get
public Worker() {
}
public Worker(String type, double salary) {
super();
this.type = type;
this.salary = salary;
}public String getType() {
return type;
}public void setType(String type) {
this.type = type;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
//按工资升序
@Override
public int compareTo(Worker o) {return this.salary>o.salary?1:(this.salary==o.salary?0:-1);
}
@Override
public String toString() {
return “工种:”+ type + “, 工资:” + salary + “\n”;
}
}
//--------------------------------------------------
package sort.col;
/** -
实体类实现Comparable接口的应用
*/
import java.util.Arrays;
import java.util.TreeSet;
public class TreeSetDemo02 {
public static void main(String[] args) {
Worker w1 = new Worker(“程序员”,10000);
Worker w2 = new Worker(“工程师”,11000);
Worker w3 = new Worker(“技术员”,8000);
//放到容器中 employees雇员
TreeSet<Worker> employees = new TreeSet<Worker>();
employees.add(w1);
employees.add(w2);
employees.add(w3);
System.out.println(employees);
}
}
//结果---------------------------------------------
[工种:技术员, 工资:8000.0
, 工种:程序员, 工资:10000.0
, 工种:工程师, 工资:11000.0
]