Java has two ways to define an order. Comparable<T> gives a class its natural ordering from inside the class, through one method, int compareTo(T other). Comparator<T> defines an ordering from outside the class, through int compare(T a, T b), so you can have many orders for one type. Both return a negative number if the first argument comes first, zero if they are equal in order, and a positive number if the first comes after.
Keep reading for free
Create a free StudyToCert account to read the rest of this lesson: 6 more sections, 4 key terms, a real-world example, an exam tip and self-check questions. Every lesson, lab and practice test is free with an account.