Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Colt 1.2.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## cern.colt.function
Interface DoubleComparator

public interface DoubleComparator

A comparison function which imposes a total ordering on some collection of elements. Comparators can be passed to a sort method (such as `cern.colt.Sorting.quickSort`) to allow precise control over the sort order.

Note: It is generally a good idea for comparators to implement `java.io.Serializable`, as they may be used as ordering methods in serializable data structures. In order for the data structure to serialize successfully, the comparator (if provided) must implement `Serializable`.

Version:
  0.1 01/09/99
See Also:
  `Comparator`, `Sorting`

Method Summary
`int` | `compare(double o1, double o2)` Compares its two arguments for order.
`boolean` | `equals(Object obj)` Indicates whether some other object is "equal to" this Comparator.

Method Detail

### compare

    public int compare(double o1,
                       double o2)

  Compares its two arguments for order. Returns a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.

  The implementor must ensure that `sgn(compare(x, y)) == -sgn(compare(y, x))` for all `x` and `y`. (This implies that `compare(x, y)` must throw an exception if and only if `compare(y, x)` throws an exception.)

  The implementor must also ensure that the relation is transitive: `((compare(x, y)>0) && (compare(y, z)>0))` implies `compare(x, z)>0`.

  Finally, the implementer must ensure that `compare(x, y)==0` implies that `sgn(compare(x, z))==sgn(compare(y, z))` for all `z`.

  Returns:
    a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.

### equals

    public boolean equals(Object obj)

  Indicates whether some other object is "equal to" this Comparator. This method must obey the general contract of `Object.equals(Object)`. Additionally, this method can return `true` only if the specified Object is also a comparator and it imposes the same ordering as this comparator. Thus, `comp1.equals(comp2)` implies that `sgn(comp1.compare(o1, o2))==sgn(comp2.compare(o1, o2))` for every element `o1` and `o2`.

  Note that it is always safe not to override `Object.equals(Object)`. However, overriding this method may, in some cases, improve performance by allowing programs to determine that two distinct Comparators impose the same order.

  Parameters:
    `obj` - the reference object with which to compare.
  Returns:
    `true` only if the specified object is also a comparator and it imposes the same ordering as this comparator.
  See Also:
    `Object.equals(java.lang.Object)`, `Object.hashCode()`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Colt 1.2.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Jump to the Colt Homepage