``++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 ---- for (Iterator it = items.iterator(); it.hasNext();) { if (this.predicate(it.next())) { it.remove(); } } ---- == Compliant Solution ---- items.removeIf(this::predicate); ----