Enjoy A New Student Discount All 55,000 Courses on sale for Only $12.99

Ends in 05h 23m 49s

Java 8 – Interfaz funcional Predicate

Relacionado con:
IntPredicate
LongPredicate
DoublePredicate

La interfaz funcional Predicate, viene definida en la version de Java 8, y esta pensada para realizar comprobaciones sobre objetos de cualquier tipo, ya que se dispone de interfaces funcionales auxiliares para las comprobaciones con tipos primitivos

La interfaz a implementar es

boolean test(T t)

Supongamos que necesito comprobar si una String empieza por «A»

Ejemplo de uso de la interfaz de Java8 Predicate,
Interfaz Predicate

En la linea 9, implemento la interfaz, y luego la aplico en cada ocasion en que necesito hacer la comprobacion

El método negate()

Si necesitara la función negada, podría utilizar el método negate()

Ejemplo de uso de la interfaz de Java8 Predicate, usando el método negate()
Interfaz Predicate con el método negate()

En la linea 10, estoy creando un nuevo campo Predicate pero con el resultado contrario al que contuviera «empiezaA»

Condiciones and() y or()

Es posible, combinar mas de una comparación, con los métodos and() y or()

Por ejemplo, si necesito comprobar que una string empiece por «A» y tenga mas 6 caracteres, puedo escribir

Ejemplo de uso de la interfaz de Java8 Predicate, usando el método and()
Interfaz Predicate con método and()

Si por el contrario, necesito comprobar si la string empieza por «A» o tiene mas de 6 caracteres, lo resolvería asi:

Ejemplo de uso de la interfaz de Java8 Predicate, usando el método or()
Interfaz Predicate con el método or()

Si os fijais, solo he cambiado la comprobacion en las lineas 13, 15, y 17, en donde en vez del and(), he utilizado el or()

IsEqual

Y, por ultimo, nos queda la posibilidad de comparar por igual, utilizando

Objects.equals(Object, Object).

Ejemplo de uso de la interfaz de Java8 Predicate, usando el método isEqual()
Interfaz Predicate con el método isEqual()

Descubre más desde Recursos para formacion

Suscríbete y recibe las últimas entradas en tu correo electrónico.

Deja un comentario

/*Si te ha gustado el artículo
no dudes en compartirlo*/

Facebook
Twitter
LinkedIn

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies

Ver mi IP

Ver ip de mi máquina
tipo valor
Ip: 216.73.216.156
Proxy: 216.73.216.156
Remote host: 216.73.216.156
Remote port: 47488
** 216.73.216.156, 172.71.255.80