Многопоточность middle
В чём разница: CompletableFuture: thenApply vs thenCompose vs thenCombine?
Ответ
thenApply — преобразование результата. thenCompose — flatMap для CompletableFuture (нужен, когда лямбда возвращает CompletableFuture). thenCombine — объединение двух.
Разбор: Правильно: thenApply — преобразование результата (T→R), thenCompose — flatMap, когда лямбда возвращает CompletableFuture (T→CF<R>), thenCombine — объединение результатов двух независимых CF. Ловушка — перепутать местами роли thenApply и thenCompose: если внутри thenApply вернуть CF, получится вложенный CF<CF<R>>, который как раз и разворачивает thenCompose.
Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.