當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。