如何在Java中生成指向函数的指针数组?

如何在Java中生成指向函数的指针数组?,java,function-pointers,Java,Function Pointers,我有很多函数,希望使用数组来调用它们。 我知道如何在C++中做,但不知道如何用java来做。 我的意图代码如下: Array<function pointers> functionBook[100]; functionBook.add(function_0); functionBook.add(function_1); . . . functionBook.add(function_99); void functionCaller(int i){ functionBoo

我有很多函数,希望使用数组来调用它们。 我知道如何在C++中做,但不知道如何用java来做。 我的意图代码如下:

Array<function pointers> functionBook[100];
functionBook.add(function_0);
functionBook.add(function_1);
 .
 .
 .
functionBook.add(function_99);


void functionCaller(int i){
  functionBook[i](); // will call function_i()
}
数组函数书[100];
functionBook.add(函数0);
功能书。添加(功能_1);
.
.
.
功能书。添加(功能书99);
无效函数调用程序(int i){
functionBook[i]();//将调用函数
}

尝试使用lambda和功能接口:

public static void main(String[] args) {

    List<Runnable> list = List.of(
            () -> System.out.println("first"),
            () -> System.out.println("second"),
            () -> System.out.println("third")
    );

    list.forEach(Runnable::run);

}
publicstaticvoidmain(字符串[]args){
List=List.of(
()->System.out.println(“第一”),
()->System.out.println(“第二”),
()->System.out.println(“第三个”)
);
list.forEach(Runnable::run);
}

您可以使用任何其他接口,比如可以接受值的函数,或者创建自己的函数接口。

Java没有函数指针。它有
@functioninterface
,您可以使用它。搜索它。不要这样做,但您可以通过JNI使用内存地址调用函数。@LppEdd使用巴拿马项目,您甚至不需要编写任何JNI代码。但是Java方法很复杂,因为它们没有固定的地址