当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java DoubleConsumer Interface用法及代码示例


DoubleConsumer 接口是的一部分java.util.function从 Java 8 开始引入的包,用于实现函数式编程在 Java 。它表示一个接受一个双值参数但不返回任何值的函数。分配给 DoubleConsumer 类型的对象的 lambda 表达式用于定义其accept()最终将给定的操作应用于其唯一的参数。它类似于使用类型的对象消费者<Double>DoubleConsumer接口由以下两个函数组成:

accept()

此方法接受一个值并对其唯一参数执行操作。句法:

void accept(double value)

参数:该方法只接受一个参数:

  • value- 输入参数

返回:该方法不返回任何值。下面是说明accept()方法的代码:

Java


import java.util.function.DoubleConsumer;
public class GFG {
    public static void main(String args[])
    {
        // Create a DoubleConsumer Instance
        DoubleConsumer
            display
            = a -> System.out.println(a * 10);
        // using accept() method
        display.accept(3);
    }
}
输出:
30.0

andThen()

它返回一个组合的DoubleConsumer,其中参数化的DoubleConsumer将在第一个之后执行。如果任一操作的评估抛出错误,则会将其转发给组合操作的调用者。注意:作为参数传递的操作类型应为 DoubleConsumer 。句法:

default DoubleConsumer andThen(DoubleConsumer after)

参数:该方法接受一个参数after这是在当前DoubleConsumer 之后应用的DoubleConsumer。返回值:此方法返回一个组合的DoubleConsumer,它首先应用当前操作,然后应用后操作。Exception:这个方法抛出NullPointerException如果后操作为空。下面是说明andThen()方法的代码:程序1:

Java


import java.util.function.DoubleConsumer;
public class GFG {
    public static void main(String args[])
    {
        // Create a DoubleConsumer Instance
        DoubleConsumer display = a -> System.out.println(a * 10);
        DoubleConsumer mul = a -> a /= 2;
        // using addThen() method
        DoubleConsumer composite = mul.andThen(display);
        composite.accept(3);
    }
}
输出:
30.0

程序2:演示何时NullPointerException被返回。

Java


import java.util.function.DoubleConsumer;
public class GFG {
    public static void main(String args[])
    {
        // Create a DoubleConsumer Instance
        DoubleConsumer mul = a -> a /= 10;
        try {
            // using addThen() method
            DoubleConsumer composite = mul.andThen(null);
            composite.accept(3);
        }
        catch (Exception e) {
            System.out.println("Exception : " + e);
        }
    }
}
输出:
Exception : java.lang.NullPointerException

程序3:演示如何返回和处理 after 函数中的异常。

Java


import java.util.function.DoubleConsumer;
public class GFG {
    public static void main(String args[])
    {
        try {
            DoubleConsumer
                conv
                = a
                -> System.out.println(
                    Integer
                        .parseInt(
                            Double
                                .toString(a)));
            DoubleConsumer mul = a -> a /= 10;
            // using addThen() method
            DoubleConsumer composite = mul.andThen(conv);
            composite.accept(3);
        }
        catch (Exception e) {
            System.out.println("Exception : " + e);
        }
    }
}
输出:
Exception : java.lang.NumberFormatException: For input string: "3.0"


相关用法


注:本文由纯净天空筛选整理自psil123大神的英文原创作品 DoubleConsumer Interface in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。