Preguntas etiquetadas con java-stream

Use esta etiqueta para preguntas relacionadas con el uso de Stream API. Se introdujo en Java 8 y admite operaciones de estilo funcional en flujos de valores, como las canalizaciones filter-map-reduce en colecciones.

9
Java 8: formateo de lambda con nuevas líneas y sangría
Lo que me gustaría lograr con la sangría lambda es lo siguiente: Declaración de varias líneas: String[] ppl = new String[] { "Karen (F)", "Kevin (M)", "Lee (M)", "Joan (F)", "Des (M)", "Rick (M)" }; List<String> strings = Arrays.stream(ppl) .filter( (x) -> { return x.contains("(M)"); } ).collect(Collectors.toList()); strings.stream().forEach(System.out::println); Declaración de …

4
¿Cómo mantengo el orden de iteración de una lista cuando uso Collections.toMap () en una secuencia?
Estoy creando una Mapde la Listsiguiente manera: List<String> strings = Arrays.asList("a", "bb", "ccc"); Map<String, Integer> map = strings.stream() .collect(Collectors.toMap(Function.identity(), String::length)); Quiero mantener el mismo orden de iteración que en el List. ¿Cómo puedo crear un LinkedHashMapusando los Collectors.toMap()métodos?




4
Java 8: fusionar listas con la API de transmisión
Tengo la siguiente situación Map<Key, ListContainer> map; public class ListContainer{ List<AClass> lst; } Tengo que fusionar todas las listas lstde los ListContainerobjetos de un Mapmapa. public static void main(String args[]){ List<AClass> alltheObjectsAClass = map.values().stream(). // continue.... } ¿Alguna idea de cómo usar la API de flujo de Java 8?

3
Verifique instanceof en la secuencia
Tengo la siguiente expresión: scheduleIntervalContainers.stream() .filter(sic -> ((ScheduleIntervalContainer) sic).getStartTime() != ((ScheduleIntervalContainer)sic).getEndTime()) .collect(Collectors.toList()); ... donde scheduleIntervalContainerstiene el tipo de elemento ScheduleContainer: final List<ScheduleContainer> scheduleIntervalContainers ¿Es posible comprobar el tipo antes del filtro?

3
Operaciones de flujo intermedio no evaluadas en conteo
Parece que tengo problemas para entender cómo Java compone las operaciones de transmisión en una tubería de transmisión. Al ejecutar el siguiente código public static void main(String[] args) { StringBuilder sb = new StringBuilder(); var count = Stream.of(new String[]{"1", "2", "3", "4"}) .map(sb::append) .count(); System.out.println(count); System.out.println(sb.toString()); } La consola solo …
33 java  java-stream 

2
¿Cómo puedo omitir la llamada de límite (número) con una transmisión cuando el número es igual a 0?
Tengo un código Java que proporciona objetos de items. Los limita en función de maxNumber: items.stream() .map(this::myMapper) .filter(item -> item != null) .limit(maxNumber) .collect(Collectors.toList()); Funciona correctamente, pero la pregunta es la siguiente: ¿hay alguna forma de omitir la limitación cuando el maxNumber == 0? Sé que podría hacer esto: if …


3
Las secuencias Java infinitas paralelas se quedan sin memoria
Estoy tratando de entender por qué el siguiente programa Java da un OutOfMemoryError, mientras que el programa correspondiente sin .parallel()no. System.out.println(Stream .iterate(1, i -> i+1) .parallel() .flatMap(n -> Stream.iterate(n, i -> i+n)) .mapToInt(Integer::intValue) .limit(100_000_000) .sum() ); Tengo dos preguntas: ¿Cuál es el resultado previsto de este programa? Sin .parallel()que parezca …


2
¿Cómo entender este método Java 8 Stream collect ()?
Estaba tratando de convertir una matriz int a List y tomé la ruta desconocida de usar Java 8 Stream y se me ocurrió esto Arrays.stream(arr).boxed().collect(Collectors.toList()); Todavía tengo dificultades para entender completamente esta línea, principalmente, ¿Por qué Collectors.toList()en este caso se devuelve una interfaz de ArrayList<Integer>implementación List? ¿Por qué no LinkedList<Integer>o …


3
Flujo paralelo de Java: orden de invocar el método parallel () [cerrado]
Cerrada . Esta pregunta necesita estar más centrada . Actualmente no está aceptando respuestas. ¿Quieres mejorar esta pregunta? Actualice la pregunta para que se centre en un problema solo editando esta publicación . Cerrado hace 4 días . AtomicInteger recordNumber = new AtomicInteger(); Files.lines(inputFile.toPath(), StandardCharsets.UTF_8) .map(record -> new Record(recordNumber.incrementAndGet(), record)) …
11 java  java-stream 

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.