Checks the given
predicate on each element of this collection until all element
have been processed or the predicate returns
false for some element,
or throws an
Exception. Exceptions thrown by the predicate are relayed to the caller.
Unless otherwise specified by the implementing class, elements are checked
by the predicate in the order of iteration (if an iteration order is specified).
If this collection is empty, this method returns
true immediately.