首頁 > Java > java教程 > 如何使用匿名內部類別或 Lambda 表達式模擬 Java 中的函數指標?

如何使用匿名內部類別或 Lambda 表達式模擬 Java 中的函數指標?

Patricia Arquette
發布: 2024-11-20 13:39:22
原創
698 人瀏覽過

How Can I Simulate Function Pointers in Java Using Anonymous Inner Classes or Lambda Expressions?

Java 中函數介面作為函數指標

在Java 中,函數指標不可用,匿名內部類別或lambda 表達式是適當的替代方案.

匿名內部類別

想像一下,您需要執行類似操作但在單行計算中略有不同的方法。若要使用匿名內部類別實作此功能:

  1. 定義一個包含您想要封裝的函數的介面。
interface StringFunction {
    int func(String param);
}
登入後複製
  1. 建立一個接受介面的實例作為參數。
public void takingMethod(StringFunction sf) {
    int i = sf.func("my string");
    // Operations...
}
登入後複製
  1. 使用匿名內部類別呼叫方法:
ref.takingMethod(new StringFunction() {
    public int func(String param) {
        // Implementation...
    }
});
登入後複製

Lambda 表達式( Java 8 )

語法上更簡單,您可以利用lambda 表達式來實現相同的結果:

ref.takingMethod(param -> {
    // Implementation...
});
登入後複製

透過利用匿名內部類別或lambda 表達式,您可以在Java,增強程式碼的複用性和靈活性。

以上是如何使用匿名內部類別或 Lambda 表達式模擬 Java 中的函數指標?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板