Comment parcourir la liste en utilisant plusieurs flux Java 8?

Neha:

J'ai trois listes,

List<Double> list1= new ArrayList(List.of(1, 1.5));
List<Double> list2= new ArrayList(List.of(30, 25));
List<Double> list3= new ArrayList(List.of(30, 25));

Je veux traverser à travers chaque fois, et imprimer

1    30  30
1.5  25  25

Comment puis-je faire cela en utilisant l'API de flux java-8?

Xingbin:

Cela fonctionne lorsque la taille des listes sont identiques ou différents:

List<Double> list1 = List.of(1D, 1.5D);
List<Double> list2 = List.of(30D, 25D);
List<Double> list3 = List.of(30D, 25D);
Stream<List<Double>> listStream = Stream.of(list1, list2, list3);

int maxSize = listStream.mapToInt(List::size).max().orElse(0);

IntStream.range(0, maxSize)
        .forEach(index -> {
            listStream
                    .filter(list -> list.size() > index)
                    .forEach(list -> System.out.print(list.get(index) + " "));
            System.out.println();
        });

Je suppose que tu aimes

Origine http://43.154.161.224:23101/article/api/json?id=168158&siteId=1
conseillé
Classement