Java 8 имеет функцию CompletableFuture.allOf(CompletableFuture<?>...cfs)
, которая возвращает CompletableFuture
, которая завершается, когда все заданные фьючерсы завершаются.
Однако, я почти всегда не имею дело с массивом CompletableFuture
s, но вместо этого имеет List<CompletableFuture>
. Конечно, я могу использовать метод toArray()
, но это заканчивается тем, что вам нужно постоянно конвертировать назад и вперед между массивами и списками.
Было бы неплохо, если бы был гладкий способ получить CompletableFuture<List<T>>
в обмен на List<CompletableFuture<T>>
, а не постоянно бросать в создание промежуточного массива. Кто-нибудь знает способ сделать это в Java 8?