Java tutorial
import java.util.Arrays; public class Main { public static void main(String[] args) { Car car1 = new Car("A", 5000); Car car2 = new Car("B", 5000); Car car3 = new Car("C", 4000); System.out.println("Car 1 equals Car 2: " + car1.compareTo(car2)); System.out.println("Car 1 equals Car 3: " + car1.compareTo(car3)); System.out.println("Car 2 equals Car 3: " + car2.compareTo(car3)); Car[] carArray = new Car[] { car1, car2, car3 }; Arrays.sort(carArray); for (Car car : carArray) System.out.println(car.toString()); } } class Car implements Comparable { private String make; private int mileage; public Car(String make, int mileage) { this.make = make; this.mileage = mileage; } public int compareTo(Object obj) { if (obj instanceof Car) { Car car = (Car) obj; if (this.mileage > car.getMileage()) return 1; else if (this.mileage < car.getMileage()) return -1; } return 0; } public int getMileage() { return mileage; } public String toString() { StringBuffer buffer = new StringBuffer(); buffer.append("Make: " + make + ",Mileage: " + mileage); return buffer.toString(); } }