streams procesamiento print parte libreria examples ejemplo datos con collection java filter functional-programming java-stream java.nio.file

procesamiento - stream java 8 ejemplo



Eliminar el primer elemento de un Stream en Java 8 (1)

He generado un Stream en Java 8 con el método Files.walk () de la biblioteca java.nio. El problema es que el método incluye por defecto la ruta de acceso raíz, pero no quiero este elemento. He resuelto en este caso con este código usando el método filter ():

public void listFiles(String directoryPath) { try { Path root = Paths.get(directoryPath); Files.walk(root,1) .filter(x -> !x.equals(root)) .forEach(System.out::println); } catch (IOException ex) { System.err.println("Error reading file: " + directoryPath); } }

Mi pregunta es si hay una forma más elegante de eliminar el primer elemento de un Stream que este. Por ejemplo, trabajar con un índice en el método Stream o con un método tail () como otros lenguajes funcionales.


Usa skip(1) para ignorar el primer elemento.

No lo use con flujos paralelos sin leer el descargo de responsabilidad en el javadoc.