Skip to Content
Recetas Java modernas
book

Recetas Java modernas

by Ken Kousen
October 2024
Intermediate to advanced
322 pages
7h 7m
Spanish
O'Reilly Media, Inc.
Book available
Content preview from Recetas Java modernas

Capítulo 6. El tipo opcional

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Sigh, ¿por qué todo lo relacionado con Optional tiene que llevar 300 mensajes?

Brian Goetz, lista de correo lambda-libs-spec-experts (23 de octubre de 2013)

La API de Java 8 introdujo una nueva clase llamada java.util.Optional<T>. Aunque muchos desarrolladores suponen que el objetivo de Optional es eliminar NullPointerExceptions de tu código, ése no es su verdadero propósito. En cambio, Optional está diseñada para comunicar al usuario cuándo un valor devuelto puede ser legítimamente nulo. Esta situación puede darse cuando un flujo de valores se filtra por alguna condición que resulta que no deja ningún elemento.

En la API Stream, los siguientes métodos devuelven un Optional si no quedan elementos en el flujo: reduce, min, max, findFirst, findAny.

Una instancia de Optional puede estar en uno de estos dos estados: una referencia a una instancia de tipo T, o vacía. El primer caso se denomina presente, y el segundo vacío (por oposición a null).

Advertencia

Aunque Optional es un tipo de referencia, nunca se le debe asignar un valor de null. Hacerlo es un error grave.

Este capítulo examina las formas idiomáticas de utilizar Optional. Aunque es probable que el uso adecuado de Optional sea una animada fuente de discusiones en tu empresa,1 la buena noticia es que existen recomendaciones estándar para su uso adecuado. Seguir estos principios ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Sistemas reactivos en Java

Sistemas reactivos en Java

Clement Escoffier, Ken Finnigan
SRE con Microservicios Java

SRE con Microservicios Java

Jonathan Schneider
Java nativo en la nube

Java nativo en la nube

Josh Long, Kenny Bastani

Publisher Resources

ISBN: 9798341602205