StreamToLoopInspection: support inside single-expression lambdas

This commit is contained in:
Tagir Valeev
2016-11-30 17:34:48 +07:00
parent f97d042e2f
commit 4e919302c7
3 changed files with 65 additions and 17 deletions

View File

@@ -0,0 +1,27 @@
// "Replace Stream API chain with loop" "true"
import java.util.Objects;
import java.util.function.DoubleSupplier;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class Main {
public void test(String... list) {
DoubleSupplier s = () -> {
long sum = 0;
long count = 0;
for (String s1 : list) {
if (Objects.nonNull(s1)) {
sum += s1.length();
count++;
}
}
return (count == 0 ? 0.0 : (double) sum / count);
};
System.out.println(s.getAsDouble());
}
public static void main(String[] args) {
new Main().test("a", "bbb", null, "cc", "dd", "eedasfasdfs");
}
}