Javolution 6.0.0 java
WrapperComparatorImpl.java
Go to the documentation of this file.
1
/*
2
* Javolution - Java(TM) Solution for Real-Time and Embedded Systems
3
* Copyright (C) 2012 - Javolution (http://javolution.org/)
4
* All rights reserved.
5
*
6
* Permission to use, copy, modify, and distribute this software is
7
* freely granted, provided that this notice is preserved.
8
*/
9
package
javolution.util.internal.comparator;
10
11
import
java.io.Serializable;
12
import
java.util.Comparator;
13
14
import
javolution
.
util
.
function
.
Equality
;
15
21
public
final
class
WrapperComparatorImpl
<E>
implements
Equality
<E>,
22
Serializable {
23
24
private
static
final
long
serialVersionUID
= 8775282553794347279L;
25
private
final
Comparator<? super E>
comparator
;
26
27
public
WrapperComparatorImpl
(Comparator<? super E>
comparator
) {
28
this.comparator =
comparator
;
29
}
30
31
@Override
32
public
int
hashCodeOf
(E obj) {
33
throw
new
UnsupportedOperationException(
34
"Standard comparator (java.util.Comparator) cannot be used for "
35
+
"hashcode calculations; please use a coherent equality comparator "
36
+
"instead (e.g. javolution.util.function.Equality)."
);
37
}
38
39
@Override
40
public
boolean
areEqual
(E e1, E e2) {
41
return
(e1 == e2) || (e1 !=
null
&& (
comparator
.compare(e1, e2) == 0));
42
}
43
44
@Override
45
public
int
compare
(E left, E right) {
46
if
(left == right)
47
return
0;
48
if
(left ==
null
)
49
return
-1;
50
if
(right ==
null
)
51
return
1;
52
return
comparator
.compare(left, right);
53
}
54
}
javolution
javolution.util.internal.comparator.WrapperComparatorImpl.hashCodeOf
int hashCodeOf(E obj)
Definition:
WrapperComparatorImpl.java:32
javolution.util.internal.comparator.WrapperComparatorImpl.compare
int compare(E left, E right)
Definition:
WrapperComparatorImpl.java:45
javolution.util.function.Equality
Definition:
Equality.java:39
javolution.util.internal.comparator.WrapperComparatorImpl.comparator
final Comparator<? super E > comparator
Definition:
WrapperComparatorImpl.java:25
javolution.util.internal.comparator.WrapperComparatorImpl
Definition:
WrapperComparatorImpl.java:22
javolution.util.internal.comparator.WrapperComparatorImpl.WrapperComparatorImpl
WrapperComparatorImpl(Comparator<? super E > comparator)
Definition:
WrapperComparatorImpl.java:27
javolution.util.function
Definition:
Consumer.java:9
javolution.util.internal.comparator.WrapperComparatorImpl.serialVersionUID
static final long serialVersionUID
Definition:
WrapperComparatorImpl.java:24
javolution.util.internal.comparator.WrapperComparatorImpl.areEqual
boolean areEqual(E e1, E e2)
Definition:
WrapperComparatorImpl.java:40
javolution.util
Definition:
FastBitSet.java:9
core-java
src
main
java
javolution
util
internal
comparator
WrapperComparatorImpl.java
Generated by
1.8.18