8023339: Refined Collection.removeIf UOE conditions
Reviewed-by: mduigou
This commit is contained in:
parent
e68f7e9564
commit
ea739968d2
@ -379,8 +379,8 @@ public interface Collection<E> extends Iterable<E> {
|
||||
|
||||
/**
|
||||
* Removes all of the elements of this collection that satisfy the given
|
||||
* predicate. Errors or runtime exceptions thrown by the predicate are
|
||||
* relayed to the caller.
|
||||
* predicate. Errors or runtime exceptions thrown during iteration or by
|
||||
* the predicate are relayed to the caller.
|
||||
*
|
||||
* @implSpec
|
||||
* The default implementation traverses all elements of the collection using
|
||||
@ -393,9 +393,10 @@ public interface Collection<E> extends Iterable<E> {
|
||||
* removed
|
||||
* @return {@code true} if any elements were removed
|
||||
* @throws NullPointerException if the specified filter is null
|
||||
* @throws UnsupportedOperationException if the {@code remove}
|
||||
* method is not supported by this collection's
|
||||
* {@link #iterator}
|
||||
* @throws UnsupportedOperationException if elements cannot be removed
|
||||
* from this collection. Implementations may throw this exception if a
|
||||
* matching element cannot be removed or if, in general, removal is not
|
||||
* supported.
|
||||
* @since 1.8
|
||||
*/
|
||||
default boolean removeIf(Predicate<? super E> filter) {
|
||||
|
@ -207,8 +207,8 @@ public class MOAT {
|
||||
new Fun(){void f(){ it.next(); }});
|
||||
|
||||
try { it.remove(); }
|
||||
catch (IllegalStateException _) { pass(); }
|
||||
catch (UnsupportedOperationException _) { pass(); }
|
||||
catch (IllegalStateException ignored) { pass(); }
|
||||
catch (UnsupportedOperationException ignored) { pass(); }
|
||||
catch (Throwable t) { unexpected(t); }
|
||||
|
||||
if (rnd.nextBoolean())
|
||||
@ -280,9 +280,9 @@ public class MOAT {
|
||||
testEmptyCollection(m.values());
|
||||
|
||||
try { check(! m.containsValue(null)); }
|
||||
catch (NullPointerException _) { /* OK */ }
|
||||
catch (NullPointerException ignored) { /* OK */ }
|
||||
try { check(! m.containsKey(null)); }
|
||||
catch (NullPointerException _) { /* OK */ }
|
||||
catch (NullPointerException ignored) { /* OK */ }
|
||||
check(! m.containsValue(1));
|
||||
check(! m.containsKey(1));
|
||||
}
|
||||
@ -710,8 +710,8 @@ public class MOAT {
|
||||
l.addAll(-1, Collections.<Integer>emptyList());
|
||||
fail("Expected IndexOutOfBoundsException not thrown");
|
||||
}
|
||||
catch (UnsupportedOperationException _) {/* OK */}
|
||||
catch (IndexOutOfBoundsException _) {/* OK */}
|
||||
catch (UnsupportedOperationException ignored) {/* OK */}
|
||||
catch (IndexOutOfBoundsException ignored) {/* OK */}
|
||||
catch (Throwable t) { unexpected(t); }
|
||||
|
||||
// equal(l instanceof Serializable,
|
||||
|
Loading…
x
Reference in New Issue
Block a user