Class PropertyComparator
- All Implemented Interfaces:
Comparator
- Direct Known Subclasses:
IDPropertyComparator,PropertyComparatorDesc,VersionPropertyComparator
StringComparator or a custom Comparator.- See Also:
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCreate a new string comparator, comparing the specified object.PropertyComparator(String property) Create a new property comparator, comparing the specified object property.PropertyComparator(String property, Comparator comparator) Create a new string comparator, comparing the specified object property. -
Method Summary
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.util.Comparator
equals, reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
-
Field Details
-
property
-
comparator
-
-
Constructor Details
-
PropertyComparator
Create a new property comparator, comparing the specified object property.- Parameters:
property- the name of the property to compare
-
PropertyComparator
Create a new string comparator, comparing the specified object property.- Parameters:
property- the name of the property to comparecomparator- the comparator to use when comparing the property values
-
PropertyComparator
public PropertyComparator()Create a new string comparator, comparing the specified object.
-
-
Method Details
-
compare
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.
It is generally the case, but not strictly required that (compare(x, y)==0) == (x.equals(y)). Generally speaking, any comparator that violates this condition should clearly indicate this fact. The recommended language is "Note: this comparator imposes orderings that are inconsistent with equals."
- Specified by:
comparein interfaceComparator- Parameters:
object1- the first object to be compared.object2- the second object to be compared.- Returns:
- a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.
- Throws:
ClassCastException- if the arguments' types prevent them from being compared by this Comparator.- See Also:
-