Mam następujący kod i chciałbym go zaimplementować za pomocą funkcji lambda dla zabawy. Czy można to zrobić za pomocą podstawowych operacji agregujących?Jak wykonać zagnieżdżone instrukcje "jeśli" używając Java 8/lambda?
List<Integer> result = new ArrayList<>();
for (int i = 1; i <= 10; i++) {
if (10 % i == 0) {
result.add(i);
if (i != 5) {
result.add(10/i);
}
}
}
Korzystanie lambda:
List<Integer> result = IntStream.rangeClosed(1, 10)
.boxed()
.filter(i -> 10 % i == 0)
// a map or forEach function here?
// .map(return 10/i -> if i != 5)
.collect(Collectors.toList());
Podoba mi się, jak nie tylko odpowiedzieć na pytanie, ale także nauczyć się myśleć o problemie, aby dostać się do rozwiązania. – marcus