Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Java

Java 8 - Clase opcional

Opcional es un objeto contenedor que se usa para contener objetos no nulos. El objeto opcional se usa para representar nulo con valor ausente. Esta clase tiene varios métodos de utilidad para facilitar que el código maneje valores como "disponibles" o "no disponibles" en lugar de verificar valores nulos. Se introduce en Java 8 y es similar a Opcional en Guava.

Declaración de clase

La siguiente es la declaración para java.util.Optional clase −

public final class Optional<T> extends Object

Método de clase

Sr.No. Método y descripción
1

estática Opcional vacía()

Devuelve una instancia opcional vacía.

2

igual booleano(Objeto obj)

Indica si algún otro objeto es "igual a" este Opcional.

3

Filtro opcional (predicado predicado)

Si un valor está presente y el valor coincide con un predicado determinado, devuelve un Opcional que describe el valor; de lo contrario, devuelve un Opcional vacío.

4

Opcional flatMap(Función> mapeador)

Si hay un valor presente, se le aplica la función de mapeo de orientación opcional proporcionada, devuelve ese resultado; de lo contrario, devuelve un valor opcional vacío.

5

T obtener()

Si un valor está presente en este Opcional, devuelve el valor; de lo contrario, arroja NoSuchElementException.

6

código hash int()

Devuelve el valor del código hash del valor actual, si lo hay, o 0 (cero) si no hay ningún valor presente.

7

void ifPresent(Consumidor consumidor)

Si hay un valor presente, invoca al consumidor especificado con el valor; de lo contrario, no hace nada.

8

booleano está presente()

Devuelve verdadero si hay un valor presente; de ​​lo contrario, devuelve falso.

9

Mapa opcional (Función mapeador)

Si hay un valor presente, se le aplica la función de asignación proporcionada y, si el resultado no es nulo, devuelve un Opcional que describe el resultado.

10

estático opcional de (valor T)

Devuelve un Opcional con el valor actual no nulo especificado.

11

estático opcional de Nullable (valor T)

Devuelve un Opcional que describe el valor especificado, si no es nulo; de lo contrario, devuelve un Opcional vacío.

12

T orElse(T otro)

Devuelve el valor si está presente; de ​​lo contrario, devuelve otro.

13

T orElseGet(Proveedor otro)

Devuelve el valor si está presente, de lo contrario invoca otro y devuelve el resultado de esa invocación.

14

T orElseThrow(Proveedor excepciónProveedor)

Devuelve el valor contenido, si está presente; de ​​lo contrario, genera una excepción que debe crear el proveedor proporcionado.

15

Cadena a Cadena()

Devuelve una representación de cadena no vacía de este opcional adecuado para la depuración.

Esta clase hereda métodos de la siguiente clase −

Ejemplo opcional

Cree el siguiente programa Java utilizando cualquier editor de su elección en, por ejemplo, C:\> JAVA.

Java8Tester.java

Demostración en vivo
import java.util.Optional;

public class Java8Tester {

   public static void main(String args[]) {
      Java8Tester java8Tester = new Java8Tester();
      Integer value1 = null;
      Integer value2 = new Integer(10);
		
      //Optional.ofNullable - allows passed parameter to be null.
      Optional<Integer> a = Optional.ofNullable(value1);
		
      //Optional.of - throws NullPointerException if passed parameter is null
      Optional<Integer> b = Optional.of(value2);
      System.out.println(java8Tester.sum(a,b));
   }
	
   public Integer sum(Optional<Integer> a, Optional<Integer> b) {
      //Optional.isPresent - checks the value is present or not
		
      System.out.println("First parameter is present: " + a.isPresent());
      System.out.println("Second parameter is present: " + b.isPresent());
		
      //Optional.orElse - returns the value if present otherwise returns
      //the default value passed.
      Integer value1 = a.orElse(new Integer(0));
		
      //Optional.get - gets the value, value should be present
      Integer value2 = b.get();
      return value1 + value2;
   }
}

Verificar el resultado

Compile la clase usando javac compilador de la siguiente manera −

C:\JAVA>javac Java8Tester.java

Ahora ejecute Java8Tester de la siguiente manera −

C:\JAVA>java Java8Tester

Debería producir el siguiente resultado −

First parameter is present: false
Second parameter is present: true
10

Java

  1. Palabra clave final de Java
  2. Operador de instancia de Java
  3. Herencia de Java
  4. Clase estática anidada de Java
  5. Clase anónima de Java
  6. Clase única de Java
  7. Reflexión Java
  8. Clase Java ObjectOutputStream
  9. Genéricos de Java
  10. Clase de archivo Java
  11. Java 9 - Mejoras de clase opcionales