forEach()
calls that can be replaced with a more concise method or from which intermediate steps can be extracted.
Example:
List<String> findNStrings(List<String> list, int n) {
List<String> other = new ArrayList<>();
list.forEach(s -> {
if(s.length() > n) other.add(s);
});
return other;
}
After the quick-fix is applied:
List<String> findNStrings(List<String> list, int n) {
List<String> other = list.stream()
.filter(s -> s.length() > n)
.collect(Collectors.toList());
return other;
}
This inspection only reports if the language level of the project or module is 8 or higher.
New in 2017.3