Martin Buchholz wrote:
On Tue, Jul 7, 2009 at 07:35, Christopher Hegarty -Sun Microsystems Ireland
2) With the addition of @throws IllegalArgumentException, this
condition cannot be met with the old merge sort right, i.e.
running
with -Djava.util.Arrays.useLegacyMergeSort=true. So we're
saying
that all bets are off when running with this property set?
No. Please re-read the @throws IllegalArgumentException.
It is carefully worded to make no promises at all. All bets are
off - period.
OK great. But just to clarify, what exactly does "if the natural
order of the array elements is found to violate the Comparable
contract" mean?
"natural order" is defined in the Comparable javadoc.
Sorry, I still don't see how this @throws can be a no-op. Is it not
possible to craft an array of Comparables that violates the Comparable
contract and therefore provoke the sort method to throw IAE?
-Chris.
http://download.java.net/jdk7/docs/api/java/lang/Comparable.html
We could use @linkplain to the Comparable spec, as elsewhere in java.util.
Martin