
Inline adoc files when they are included exactly once. Also fix language tags because this inlining gives us better information on what language the code is written in.
42 lines
725 B
Plaintext
42 lines
725 B
Plaintext
== 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[]
|