Java中的LongToIntFunction介面


Java中的LongToIntFunction是一個函式式介面,它接受一個long型別引數並返回一個int型別結果。函式式介面是一個只有一個抽象方法的介面。要使用此介面,首先必須匯入java.util.function包。

此介面的函式方法是‘applyAsInt()’,它接受long值作為引數並返回int值結果。

語法

int applyAsInt(long value);

演算法

要實現此函式式介面,請按照以下步驟操作:

  • 步驟1 - 透過定義實現applyAsInt(long value)方法的lambda表示式來建立函式式介面的例項。

  • 步驟2 - 在函式式介面的例項上呼叫applyAsInt(long value)方法,傳入long值作為輸入。

  • 步驟3 - 根據需要在程式碼中使用applyAsInt(long value)方法的輸出。

方法1:定義Lambda表示式

您可以定義一個lambda表示式來實現LongToIntFunction介面的apply(long value)方法。

示例

import java.util.function.LongToIntFunction;
public class LambdaExample {
   public static void main(String[] args) {
      LongToIntFunction square = value -> (int) (value * value);
      int result = square.applyAsInt(5L);
      System.out.println(result);
   }
}

輸出

25

解釋

LongToIntFunction例項square返回輸入long值5L的平方,即25。

方法2:使用方法引用

您可以使用方法引用來實現LongToIntFunction的applyAsInt(long value)方法。

示例

import java.util.function.LongToIntFunction;
public class MethodReferenceExample {
   public static void main(String[] args) {
      LongToIntFunction digitCount = String::valueOf;
      int result = digitCount.applyAsInt(9876543210L);
      System.out.println(result);
   }
}

輸出

31

解釋

我們使用對String類的valueOf方法的引用建立一個名為digitCount的LongToIntFunction例項。為了達到預期的結果,此方法包括將long值輸入轉換為String表示,然後計算並返回其長度作為整數。然後,我們使用輸入long值9876543210L呼叫digitCount例項上的applyAsInt方法,該方法返回long值中的位數作為int。結果列印到控制檯。

方法3:使用匿名內部類

示例

import java.util.function.LongToIntFunction;
public class AnonymousClassExample {
   public static void main(String[] args) {
      LongToIntFunction binaryLength = new LongToIntFunction() {
         @Override
         public int applyAsInt(long value) {
            return Long.toBinaryString(value).length();
         }
      };
      int result = binaryLength.applyAsInt(123456789L);
      System.out.println(result);
   }
}

輸出

27

解釋

在此示例中,LongToIntFunction例項digitCount返回輸入long值9876543210L的位數,即10。結果列印到控制檯。

方法比較

標準

方法1

方法2

方法3

型別

Lambda表示式

方法引用

匿名內部類

方法

applyAsInt(long value)

applyAsInt(long value)

applyAsInt(long value)

方法邏輯

返回一個int值

返回一個int值

返回一個int值

結論

透過使用這些方法,您可以透過多種方式使用LongAsIntFunction介面來實現自定義函式,這些函式以long值作為輸入並返回不同型別的結果。

更新於:2023年7月28日

瀏覽量:61

啟動您的職業生涯

完成課程後獲得認證

開始學習
廣告
© . All rights reserved.