Stream findFirst() devuelve un Opcional (un objeto contenedor que puede contener o no un valor no nulo) que describe el primer elemento de este flujo, o un Opcional vacío si el flujo está vacío. Si la secuencia no tiene un orden de encuentro, se puede devolver cualquier elemento.
Sintaxis:
Optional<T> findFirst() Where, Optional is a container object which may or may not contain a non-null value and T is the type of objects and the function returns an Optional describing the first element of this stream, or an empty Optional if the stream is empty.
Excepción: si el elemento seleccionado es nulo, se lanza NullPointerException .
Nota: findAny() es una operación de cortocircuito de terminal de la interfaz Stream. Este método devuelve el primer elemento que satisface las operaciones intermedias.
Ejemplo 1: función findFirst() en Stream of Integers.
// Java code for Stream findFirst() // which returns an Optional describing // the first element of this stream, or // an empty Optional if the stream is empty. import java.util.*; class GFG { // Driver code public static void main(String[] args) { // Creating a List of Integers List<Integer> list = Arrays.asList(3, 5, 7, 9, 11); // Using Stream findFirst() Optional<Integer> answer = list.stream().findFirst(); // if the stream is empty, an empty // Optional is returned. if (answer.isPresent()) { System.out.println(answer.get()); } else { System.out.println("no value"); } } }
Producción :
3
Ejemplo 2: función findFirst() en Stream of Strings.
// Java code for Stream findFirst() // which returns an Optional describing // the first element of this stream, or // an empty Optional if the stream is empty. import java.util.*; class GFG { // Driver code public static void main(String[] args) { // Creating a List of Strings List<String> list = Arrays.asList("GeeksforGeeks", "for", "GeeksQuiz", "GFG"); // Using Stream findFirst() Optional<String> answer = list.stream().findFirst(); // if the stream is empty, an empty // Optional is returned. if (answer.isPresent()) { System.out.println(answer.get()); } else { System.out.println("no value"); } } }
Producción :
GeeksforGeeks
Publicación traducida automáticamente
Artículo escrito por Sahil_Bansall y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA