On Mon, 19 May 2025 07:25:17 GMT, Tagir F. Valeev <tval...@openjdk.org> wrote:
> Implementation of Comparator.min and Comparator.max methods. Preliminary > discussion is in this thread: > https://mail.openjdk.org/pipermail/core-libs-dev/2025-May/145638.html > The specification is mostly composed of Math.min/max and Collections.min/max > specifications. > > The methods are quite trivial, so I don't think we need more extensive > testing (e.g., using different comparators). But if you have ideas of new > useful tests, I'll gladly add them. > > I'm not sure whether we should specify exactly the behavior in case if the > comparator returns 0. I feel that it could be a useful invariant that > `Comparator.min(a, b)` and `Comparator.max(a, b)` always return different > argument, partitioning the set of {a, b} objects (even if they are equal). > But I'm open to suggestions here. Min and Max for the equals case would be more consistent if the value returned for equals was the same as the condition, as if `=>` or `<=` were used for the comparison. The code would be easier to read and match the description if max used `>=` and min used `<=`. ------------- PR Review: https://git.openjdk.org/jdk/pull/25297#pullrequestreview-2851547425