A Class Implementing Comparable : Comparator « Collections Data Structure « Java

A Class Implementing Comparable

public class Time implements Comparable {
  private int hour, minute; 

  public Time(int hh, int mm) {
    this.hour = hh;
    this.minute = mm;

  public int compareTo(Object o) {
    Time t = (Time) o;
    return hour != t.hour ? hour - t.hour : minute - t.minute;

  public boolean equals(Object o) {
    Time t = (Time) o;
    return hour == t.hour && minute == t.minute;

  public int hashCode() {
    return 60 * hour + minute;

Related examples in the same category

1.Creating a Comparable objectCreating a Comparable object
2. Writing Your own Comparator Writing Your own Comparator
3.Comparator for comparing strings ignoring first character
4.List and Comparators
5.Sort backwards
6.Company and Employee
7.Search with a Comparator
8.Keep upper and lowercase letters togetherKeep upper and lowercase letters together
9.Uses anonymous inner classesUses anonymous inner classes
10.Building the anonymous inner class in-placeBuilding the anonymous inner class in-place
11.Sort an array of strings in reverse order.
12.Sort an array of strings, ignore case difference.
13.Comparator uses a Collator to determine the proper, case-insensitive lexicographical ordering of two strings.
14.Using the Comparable interface to compare and sort objects
15.Sort on many(more than one) fields
16.File Name Comparator
17.Comparator similar to String.CASE_INSENSITIVE_ORDER, but handles only ASCII characters
18.Natural Order Comparator
19.Reverse Order Comparator
20.A Comparator for Boolean objects that can sort either true or false first
21.Invertible Comparator
22.This program animates a sort algorithm