The list of methods to do Iterable Size are organized into topic(s).
int
countElements(Iterable> pairs) count Elements
if (pairs instanceof List) {
return ((List<?>) pairs).size();
} else {
throw new IllegalArgumentException("Cannot determine split size from split result.");
int
getIterableSize(Iterable> iterable) get Iterable Size
if (iterable instanceof Collection<?>) {
return ((Collection<?>) iterable).size();
} else {
Iterator<?> it = iterable.iterator();
int i = 0;
while (it.hasNext()) {
i++;
return i;
T
getSingle(Iterable it) Returns a single item from the Iterator.
if (!it.iterator().hasNext())
return null;
final Iterator<T> iterator = it.iterator();
T o = iterator.next();
if (iterator.hasNext())
throw new IllegalStateException("Found multiple items in iterator over " + o.getClass().getName());
return o;
T
getSingleElementOrNull(Iterable coll) get Single Element Or Null
if (coll == null)
return null;
Iterator<T> iterator = coll.iterator();
T firstElement = iterator.next();
return iterator.hasNext() ? null : firstElement;
T
getSingleIfExist(Iterable iterable) get Single If Exist
if (iterable == null)
return null;
final Iterator<? extends T> iter = iterable.iterator();
if (!iter.hasNext())
return null;
final T result = iter.next();
if (iter.hasNext()) {
throw new IllegalArgumentException("More than (expected) one element in " + iterable);
...
int
iterableSize(Iterable itrbl) Computes, in linear time, the length of an
Iterable.
int size = 0;
for (Iterator<E> iter = itrbl.iterator(); iter.hasNext();) {
iter.next();
size++;
return size;
boolean
iterableSizeEq(Iterable itrbl, int k) Checks whether the iterable
itrbl has exactly
k elements.
Iterator<E> it = itrbl.iterator();
for (int i = 0; i < k; i++) {
if (!it.hasNext())
return false;
it.next();
return !it.hasNext();