Map.forEach() can be used
Suggests replacing for(Entry<?,?> entry : map.entrySet()) {...}
or map.entrySet().forEach(entry -> ...)
with map.forEach((key, value) -> ...)
.
Example
void print(Map<String, Integer> map) {
map.entrySet().forEach(entry -> {
String str = entry.getKey();
System.out.println(str + ":" + entry.getValue());
});
}
After the quick-fix is applied:
void print(Map<String, Integer> map) {
map.forEach((str, value) -> System.out.println(str + ":" + value));
}
When the Do not report loops option is enabled, only entrySet().forEach()
cases will be reported. However, the quick-fix action will be available for for
-loops as well.
This inspection only reports if the language level of the project or module is 8 or higher.
New in 2017.1
Inspection options
Option | Type | Default |
---|---|---|
Do not report loops | Checkbox | true |
Inspection Details | |
---|---|
Available in: | IntelliJ IDEA 2023.3, Qodana for JVM 2023.3 |
Plugin: | Java, 233.SNAPSHOT |
Last modified: 13 July 2023