org.apache.commons.collections.comparators
Class BooleanComparator

java.lang.Object
  |
  +--org.apache.commons.collections.comparators.BooleanComparator
All Implemented Interfaces:
Comparator, Serializable

public final class BooleanComparator
extends Object
implements Comparator, Serializable

A Comparator for Boolean objects.

Since:
Commons Collections 3.0
Version:
$Revision: 1.10 $ $Date: 2004/01/14 21:43:18 $
Author:
Rodney Waldhoff
See Also:
getTrueFirstComparator(), getFalseFirstComparator(), getBooleanComparator(boolean), Serialized Form

Constructor Summary
BooleanComparator()
          Creates a BooleanComparator that sorts false values before true values.
BooleanComparator(boolean trueFirst)
          Creates a BooleanComparator that sorts trueFirst values before !trueFirst values.
 
Method Summary
 int compare(Boolean b1, Boolean b2)
          Compares two non-null Booleans according to the value of sortsTrueFirst().
 int compare(Object o1, Object o2)
          Compares two arbitrary Objects.
 boolean equals(Object that)
          Returns true iff that Object is is a Comparator whose ordering is known to be equivalent to mine.
static BooleanComparator getBooleanComparator(boolean trueFirst)
          Returns a BooleanComparator instance that sorts trueFirst values before !trueFirst values.
static BooleanComparator getFalseFirstComparator()
          Returns a BooleanComparator instance that sorts false values before true values.
static BooleanComparator getTrueFirstComparator()
          Returns a BooleanComparator instance that sorts true values before false values.
 int hashCode()
          Implement a hash code for this comparator that is consistent with equals.
 boolean sortsTrueFirst()
          Returns true iff I sort true values before false values.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BooleanComparator

public BooleanComparator()
Creates a BooleanComparator that sorts false values before true values. Equivalent to BooleanComparator(false).

BooleanComparator

public BooleanComparator(boolean trueFirst)
Creates a BooleanComparator that sorts trueFirst values before !trueFirst values.
Parameters:
trueFirst - when true, sort true Booleans before false Booleans.
Method Detail

compare

public int compare(Object o1,
                   Object o2)
Compares two arbitrary Objects. When both arguments are Boolean, this method is equivalent to compare((Boolean)o1,(Boolean)o2). When either argument is not a Boolean, this methods throws a ClassCastException.
Specified by:
compare in interface Comparator
Throws:
ClassCastException - when either argument is not a Boolean

compare

public int compare(Boolean b1,
                   Boolean b2)
Compares two non-null Booleans according to the value of sortsTrueFirst().
Throws:
NullPointerException - when either argument null

hashCode

public int hashCode()
Implement a hash code for this comparator that is consistent with equals.
Overrides:
hashCode in class Object
Returns:
a hash code for this comparator.

equals

public boolean equals(Object that)
Returns true iff that Object is is a Comparator whose ordering is known to be equivalent to mine.

This implementation returns true iff that is a BooleanComparator whose sortsTrueFirst() value is equal to mine.

Specified by:
equals in interface Comparator
Overrides:
equals in class Object

sortsTrueFirst

public boolean sortsTrueFirst()
Returns true iff I sort true values before false values. In other words, returns true iff compare(Boolean.FALSE,Boolean.TRUE) returns a positive value.

getTrueFirstComparator

public static BooleanComparator getTrueFirstComparator()
Returns a BooleanComparator instance that sorts true values before false values.

Clients are encouraged to use the value returned from this method instead of constructing a new instance to reduce allocation and garbage collection overhead when multiple BooleanComparators may be used in the same virtual machine.


getFalseFirstComparator

public static BooleanComparator getFalseFirstComparator()
Returns a BooleanComparator instance that sorts false values before true values.

Clients are encouraged to use the value returned from this method instead of constructing a new instance to reduce allocation and garbage collection overhead when multiple BooleanComparators may be used in the same virtual machine.


getBooleanComparator

public static BooleanComparator getBooleanComparator(boolean trueFirst)
Returns a BooleanComparator instance that sorts trueFirst values before !trueFirst values.

Clients are encouraged to use the value returned from this method instead of constructing a new instance to reduce allocation and garbage collection overhead when multiple BooleanComparators may be used in the same virtual machine.

Parameters:
trueFirst - when true, sort true Booleans before false Booleans.
Returns:
a cached BooleanComparator instance


Copyright © 2001-2004 Apache Software Foundation. All Rights Reserved.