Javolution 6.0.0 java
javolution.util.internal.comparator.StandardComparatorImpl< E > Class Template Reference
Inheritance diagram for javolution.util.internal.comparator.StandardComparatorImpl< E >:
[legend]
Collaboration diagram for javolution.util.internal.comparator.StandardComparatorImpl< E >:
[legend]

Public Member Functions

int hashCodeOf (E e)
 
boolean areEqual (E e1, E e2)
 
int compare (E left, E right)
 
int hashCodeOf (T object)
 
boolean areEqual (T left, T right)
 
int compare (T left, T right)
 

Static Private Attributes

static final long serialVersionUID = -615690677813206151L
 

Detailed Description

The standard comparator implementation.

Definition at line 18 of file StandardComparatorImpl.java.

Member Function Documentation

◆ areEqual() [1/2]

boolean javolution.util.internal.comparator.StandardComparatorImpl< E >.areEqual ( e1,
e2 
)

Definition at line 29 of file StandardComparatorImpl.java.

29  {
30  return (e1 == e2) || (e1 != null && e1.equals(e2));
31  }

◆ areEqual() [2/2]

boolean javolution.util.function.Equality< T >.areEqual ( left,
right 
)
inherited

Indicates if the specified objects can be considered equal. This methods is equivalent to

(compare(o1, o2) == 0)

but usually faster.

Parameters
leftthe first object (or null).
rightthe second object (or null).
Returns
true if both objects are considered equal; false otherwise.

Referenced by javolution.util.internal.map.MapView< K, V >.EntryComparator.areEqual(), javolution.util.internal.collection.CollectionView< R >.contains(), javolution.util.internal.collection.CollectionView< R >.equals(), javolution.util.internal.table.TableView< E >.indexOf(), javolution.util.internal.table.TableView< E >.lastIndexOf(), javolution.util.internal.map.FastMapImpl< K, V >.remove(), javolution.util.internal.collection.CollectionView< R >.remove(), and javolution.util.internal.map.FastMapImpl< K, V >.replace().

Here is the caller graph for this function:

◆ compare() [1/2]

int javolution.util.internal.comparator.StandardComparatorImpl< E >.compare ( left,
right 
)

Definition at line 35 of file StandardComparatorImpl.java.

35  {
36  if (left == right)
37  return 0;
38  if (left == null)
39  return -1;
40  if (right == null)
41  return 1;
42  if (left instanceof Comparable)
43  return ((Comparable<E>) left).compareTo(right);
44 
45  // Empirical method (consistent with equals).
46  if (left.equals(right))
47  return 0;
48  return left.hashCode() < right.hashCode() ? -1 : 1;
49  }

◆ compare() [2/2]

int javolution.util.function.Equality< T >.compare ( left,
right 
)
inherited

Compares the specified objects for order. Returns a negative integer, zero, or a positive integer as the first argument is less than, possibly equal to, or greater than the second. Implementation classes should ensure that comparisons with

null

is supported.

Parameters
leftthe first object.
rightthe second object.
Returns
a negative integer, zero, or a positive integer as the first argument is less than, possibly equal to, or greater than the second.

Referenced by javolution.util.internal.set.sorted.SubSortedSetImpl< E >.add(), javolution.util.internal.map.MapView< K, V >.EntryComparator.compare(), javolution.text.CharArray.compareTo(), javolution.text.Text.compareTo(), javolution.util.internal.set.sorted.SubSortedSetImpl< E >.contains(), javolution.util.internal.map.sorted.SubSortedMapImpl< K, V >.containsKey(), javolution.util.internal.map.sorted.SubSortedMapImpl< K, V >.get(), javolution.util.internal.set.sorted.SubSortedSetImpl< E >.IteratorImpl.hasNext(), javolution.util.internal.map.sorted.SubSortedMapImpl< K, V >.IteratorImpl.hasNext(), javolution.util.internal.map.sorted.SubSortedMapImpl< K, V >.put(), javolution.util.internal.set.sorted.SubSortedSetImpl< E >.remove(), and javolution.util.internal.map.sorted.SubSortedMapImpl< K, V >.remove().

Here is the caller graph for this function:

◆ hashCodeOf() [1/2]

Definition at line 24 of file StandardComparatorImpl.java.

24  {
25  return (e == null) ? 0 : e.hashCode();
26  }

◆ hashCodeOf() [2/2]

int javolution.util.function.Equality< T >.hashCodeOf ( object)
inherited

Returns the hash code for the specified object (consistent with areEqual). Two objects considered equal have the same hash code. The hash code of null is always 0.

Parameters
objectthe object to return the hashcode for.
Returns
the hashcode for the specified object.

Referenced by javolution.util.internal.map.FastMapImpl< K, V >.containsKey(), javolution.util.internal.map.FastMapImpl< K, V >.get(), javolution.util.internal.collection.CollectionView< R >.hashCode(), javolution.util.internal.map.MapView< K, V >.EntryComparator.hashCodeOf(), javolution.util.internal.map.FastMapImpl< K, V >.put(), javolution.util.internal.map.FastMapImpl< K, V >.putIfAbsent(), javolution.util.internal.map.FastMapImpl< K, V >.remove(), and javolution.util.internal.map.FastMapImpl< K, V >.replace().

Here is the caller graph for this function:

Member Data Documentation

◆ serialVersionUID

final long javolution.util.internal.comparator.StandardComparatorImpl< E >.serialVersionUID = -615690677813206151L
staticprivate

Definition at line 21 of file StandardComparatorImpl.java.


The documentation for this class was generated from the following file:
Comparable
javolution.util.internal.comparator.StandardComparatorImpl.compare
int compare(E left, E right)
Definition: StandardComparatorImpl.java:35