Автор оригинала: mkyong.
Простой совет Java 8 для печати массива
или Список
с индексом спереди.
1. Массив с индексом
Создайте индекс с помощью IntStream.range
.
package com.mkyong.java8; import java.util.List; import java.util.stream.Collectors; import java.util.stream.IntStream; public class JavaArrayWithIndex { public static void main(String[] args) { String[] names = {"Java", "Node", "JavaScript", "Rust", "Go"}; Listcollect = IntStream.range(0, names.length) .mapToObj(index -> index + ":" + names[index]) .collect(Collectors.toList()); collect.forEach(System.out::println); } }
Выход
0:Java 1:Node 2:JavaScript 3:Rust 4:Go
2. Список с индексом
Преобразуйте Список
в Карту
и используйте Map.size
в качестве индекса.
R collect(Supplier supplier, BiConsumer accumulator, BiConsumer combiner);
package com.mkyong.java8; import java.util.Arrays; import java.util.HashMap; import java.util.List; public class JavaListWithIndex { public static void main(String[] args) { Listlist = Arrays.asList("Java", "Node", "JavaScript", "Rust", "Go"); HashMap collect = list .stream() .collect(HashMap ::new, (map, streamValue) -> map.put(map.size(), streamValue), (map, map2) -> { }); collect.forEach((k, v) -> System.out.println(k + ":" + v)); } }
Выход
0:Java 1:Node 2:JavaScript 3:Rust 4:Go
Рекомендации
- Поток.соберите JavaDoc
- Java 8 Примеры потребителей
- Java 8 для каждого примера
Оригинал: “https://mkyong.com/java8/java-8-foreach-print-with-index/”