== Why is this an issue?

``++Collection.removeIf++`` is more readable and less verbose than using the ``++Iterator.remove++`` idiom. It might also be more performant in some cases, particularly for ``++ArrayList++`` instances.


=== Noncompliant code example

[source,java]
----
for (Iterator it = items.iterator(); it.hasNext();) {
  if (this.predicate(it.next())) {
    it.remove();
  }
}
----


=== Compliant solution

[source,java]
----
items.removeIf(this::predicate);
----

ifdef::env-github,rspecator-view[]

'''
== Implementation Specification
(visible only on this page)

=== Message

Use "Collection.removeIf" instead of Iterator.remove


=== Highlighting

``++remove++`` call


endif::env-github,rspecator-view[]
