Sized
Brian Goetz
brian.goetz at oracle.com
Tue Nov 27 19:46:39 PST 2012
> I still think the only way out is to introduce a new method
> with long return type. We could even do it while keeping the name
> Sized, but leaving the size() method alone for continued use in
> Collections-only applications, and defaulting the new method in
> Collection:
OK, but...
> public interface Sized { // or pick a new name
> /**
> * Returns the number of elements
> */
> long elementCount(); // oh no, another arbitrary name choice
>
> default boolean isEmpty() { return elementCount() == 0; }
> }
>
> interface Collection<E> extends Sized ... {
> default long elementCount() { return (long)size(); }
> ...
> }
...why would you have the new method not return the actual size, rather
than the clamped size returned by size()?
More information about the lambda-libs-spec-observers
mailing list