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


Java LongConsumer Interface用法及代碼示例


LongConsumer 接口是的一部分java.util.function從 Java 8 開始引入的包,用於實現函數式編程在 Java 。它表示一個接受一個long值參數但不返回任何值的函數。分配給 LongConsumer 類型的對象的 lambda 表達式用於定義其accept()最終將給定的操作應用於其唯一的參數。它類似於使用類型的對象消費者<Long>LongConsumer接口由以下兩個函數組成:

accept()

此方法接受一個值並對其唯一參數執行操作。句法:

void accept(long value)

參數:該方法隻接受一個參數:

  • value- 輸入參數

返回:該方法不返回任何值。下麵是說明accept()方法的代碼:

Java


import java.util.function.LongConsumer;
public class GFG {
    public static void main(String args[])
    {
        // Create a LongConsumer Instance
        LongConsumer
            display
            = a -> System.out.println(a * 100);
        // Using accept() method
        display.accept(3);
    }
}
輸出:
300

andThen()

它返回一個組合的LongConsumer,其中參數化的LongConsumer將在第一個之後執行。如果任一操作的評估拋出錯誤,則會將其轉發給組合操作的調用者。注意:作為參數傳遞的操作應該是 LongConsumer 類型。句法:

default LongConsumer andThen(LongConsumer after)

參數:該方法接受一個參數after這是在當前LongConsumer 之後應用的LongConsumer。返回值:此方法返回一個組合的LongConsumer,它首先應用當前操作,然後應用後操作。Exception:這個方法拋出NullPointerException如果後操作為空。以下示例程序旨在說明andThen()方法:程序1:

Java


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

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

Java


import java.util.function.LongConsumer;
public class GFG {
    public static void main(String args[])
    {
        try {
            LongConsumer mul = a -> a *= 10;
            LongConsumer 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.LongConsumer;
public class GFG {
    public static void main(String args[])
    {
        try {
            LongConsumer divide = a -> a = a / (a - 3);
            LongConsumer mul = a -> a *= 10;
            LongConsumer composite = mul.andThen(divide);
            composite.accept(3);
        }
        catch (Exception e) {
            System.out.println("Exception : " + e);
        }
    }
}
輸出:
Exception : java.lang.ArithmeticException: / by zero


相關用法


注:本文由純淨天空篩選整理自psil123大神的英文原創作品 LongConsumer Interface in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。