Interfaz DoubleUnaryOperator en Java

La interfaz DoubleUnaryOperator es parte del paquete java.util.function que se introdujo desde Java 8 para implementar la programación funcional en Java. Representa una función que toma un argumento y opera sobre él. Tanto su argumento como su tipo de retorno son de tipo de datos doble. Es muy similar a usar un objeto de tipo UnaryOperator <Double>.

La expresión lambda asignada a un objeto de tipo DoubleUnaryOperator se usa para definir su applyAsDouble() que eventualmente aplica la operación dada en su argumento.

Funciones en la interfaz DoubleUnaryOperator

La interfaz DoubleUnaryOperator consta de las siguientes funciones:

1. identidad()

Este método devuelve un DoubleUnaryOperator que toma un valor doble y lo devuelve. El DoubleUnaryOperator devuelto no realiza ninguna operación en su único valor.

Sintaxis:

static  DoubleUnaryOperator identity()

Parámetros: Este método no toma en ningún parámetro

Devoluciones: un DoubleUnaryOperator que toma un valor y lo devuelve.

A continuación se muestra el código para ilustrar el método Identity():

Programa

import java.util.function.DoubleUnaryOperator;
  
public class GFG {
    public static void main(String args[])
    {
        DoubleUnaryOperator
            op
            = DoubleUnaryOperator.identity();
  
        System.out.println(op.applyAsDouble(12.0));
    }
}
Producción:

12.0

2. aplicarComoDoble()

Este método toma un valor doble, realiza la operación dada y devuelve un resultado de valor doble.

Sintaxis:

double applyAsDouble(double operand)

Parámetros: este método toma un parámetro de doble valor

Devoluciones: : Devuelve un resultado de doble valor.

A continuación se muestra el código para ilustrar el método applyAsDouble():

Programa

import java.util.function.DoubleUnaryOperator;
  
public class GFG {
    public static void main(String args[])
    {
        DoubleUnaryOperator op = a -> 2 * a;
  
        System.out.println(op.applyAsDouble(12.0));
    }
}
Producción:

24.0

3. agregarLuego()

Devuelve un DoubleUnaryOperator compuesto en el que el operador parametrizado se ejecutará después del primero. Si cualquiera de las operaciones arroja un error, se retransmite a la persona que llama de la operación compuesta.

Sintaxis:

default DoubleUnaryOperator andThen(DoubleUnaryOperator after)

Parámetros: Este método acepta un parámetro después del cual es la operación a aplicar después de la actual.

Valor devuelto: este método devuelve un DoubleUnaryOperator compuesto que aplica la operación actual primero y luego la operación posterior.

Excepción: este método arroja NullPointerException si la operación posterior es nula.

A continuación se muestra el código para ilustrar el método addThen():

Programa 1:

import java.util.function.DoubleUnaryOperator;
  
public class GFG {
    public static void main(String args[])
    {
  
        DoubleUnaryOperator op = a -> 2 * a;
  
        op = op.andThen(a -> 3 * a);
  
        System.out.println(op.applyAsDouble(12.0));
    }
}
Producción:

72.0

Programa 2: para demostrar cuándo se devuelve NullPointerException.

import java.util.function.DoubleUnaryOperator;
  
public class GFG {
    public static void main(String args[])
    {
  
        try {
            DoubleUnaryOperator op = a -> 2 * a;
  
            op = op.andThen(null);
  
            System.out.println(op.applyAsDouble(12.0));
        }
        catch (Exception e) {
            System.out.println("Exception: " + e);
        }
    }
}
Producción:

Exception: java.lang.NullPointerException

4. componer()

Devuelve un DoubleUnaryOperator compuesto donde se ejecutará primero la operación parametrizada y luego la primera. Si cualquiera de las operaciones arroja un error, se retransmite a la persona que llama de la operación compuesta.

Sintaxis:

default DoubleUnaryOperator compose(DoubleUnaryOperator before)

Parámetros: Este método acepta un parámetro antes del cual es la operación a aplicar primero y luego la actual

Valor devuelto: este método devuelve un DoubleUnaryOperator compuesto que aplica el operador actual después del operador parametrizado

Excepción: este método lanza NullPointerException si la operación anterior es nula.

A continuación se muestra el código para ilustrar el método compose():

Programa 1:

import java.util.function.DoubleUnaryOperator;
  
public class GFG {
    public static void main(String args[])
    {
  
        DoubleUnaryOperator op = a -> a / 3;
  
        op = op.compose(a -> a * 6);
  
        System.out.println(op.applyAsDouble(12.0));
    }
}
Producción:

24.0

Programa 2: para demostrar cuándo se devuelve NullPointerException.

import java.util.function.DoubleUnaryOperator;
  
public class GFG {
    public static void main(String args[])
    {
  
        try {
            DoubleUnaryOperator op = a -> a / 3;
  
            op = op.compose(null);
  
            System.out.println(op.applyAsDouble(12.0));
        }
        catch (Exception e) {
            System.out.println("Exception: " + e);
        }
    }
}
Producción:

Exception: java.lang.NullPointerException

Publicación traducida automáticamente

Artículo escrito por psil123 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *