Comparable.compareTo(T o) has the following syntax.
int compareTo(T o)
In the following code shows how to use Comparable.compareTo(T o) method.
/* www . j av a 2 s . c o m*/ import java.util.Arrays; public class Main { public static void main(String[] args) { Employee[] staff = new Employee[3]; staff[0] = new Employee("HTML", 35000); staff[1] = new Employee("Java", 75000); staff[2] = new Employee("CSS", 38000); Arrays.sort(staff); for (Employee e : staff){ System.out.println("name=" + e.getName() + ",salary=" + e.getSalary()); } } } class Employee implements Comparable<Employee> { public Employee(String n, double s) { name = n; salary = s; } public String getName() { return name; } public double getSalary() { return salary; } public void raiseSalary(double byPercent) { double raise = salary * byPercent / 100; salary += raise; } /** * Compares employees by salary * * @param other * another Employee object * @return a negative value if this employee has a lower salary than * otherObject, 0 if the salaries are the same, a positive value * otherwise */ public int compareTo(Employee other) { if (salary < other.salary) return -1; if (salary > other.salary) return 1; return 0; } private String name; private double salary; }
The code above generates the following result.