Java Stream с суммой удержаний
BigDecimal sumDeduction = creditList.getСведенияОплучателе().stream() Stream<ТипПоручениеНаДоставкуПенсий> .map(c -> Optional.ofNullable(c.getВсеУдержания()) Stream<Optional<ТипВсеУдержания>> .flatMap(d -> d.stream().flatMap(ds -> ds.getУдержаниеПоДокументу()) Stream<ТипУдержаниеПоДокументу> .flatMap(dv -> dv.getУдержаниеПоВидуВыплаты().stream() Stream<ТипУдержаниеПоВидуВыплаты> .map(ТипУдержаниеПоВидуВыплаты::getСуммаУдержания) Stream<BigDecimal> .reduce(BigDecimal.ZERO, BigDecimal::add);
На изображении показан фрагмент Java-кода с длинной цепочкой Stream, Optional, flatMap, map и reduce для суммирования удержаний. Шутка в том, что простая операция превращена в чрезмерно сложную и перегруженную типами конструкцию — типичная реакция программиста на бюрократичный или запутанный код. EN: The image shows a fragment of Java code with a long chain of Stream, Optional, flatMap, map, and reduce operations for summing deductions. The joke is that a simple operation has been turned into an excessively complex, type-heavy construction—a typical programmer reaction to bureaucratic or convoluted code.
- @right_wing_dev_squads / 1193 2021-02-16
- Type
- image
- Size
- 800×119 · 28.4 KiB
- Mood
- саркастичный, абсурдный
- Added