util ifpresent ejemplo java java-8 java-stream optional

java - ifpresent - ''Opcional.get()'' sin ''isPresent()'' check



optional lambda java (2)

Reemplace get() con orElse(null) .

Tengo el siguiente código de búsqueda en Java:

return getTableViewController().getMe().getColumns().stream().filter($->Database.equalsColumnName($.getId(), columnId)).findFirst().get();

Deseaba encontrar la columna por nombre y devolver la primera encontrada.

Entiendo que hay un caso en el que no se encuentra nada y debe procesarse, pero ¿cómo?

¿Es esto lo que quiere con este juramento:

''Optional.get()'' without ''isPresent()'' check

?

¿Como arreglar? Deseo devolver null si no se encuentra nada.

ACTUALIZAR

Vale, vale, simplemente no me di cuenta de que findFirst() devuelve Optional .


...findFirst().orElse(null);

Devuelve el valor si está presente, de lo contrario devuelve null . La documentación orElse(null) que el parámetro pasado puede ser null (lo que está prohibido para orElseGet y orElseThrow ).