Java 给出一个函数作为参数
可能重复:Java 给出一个函数作为参数,java,Java,可能重复: 我怎样才能给出一个函数作为参数 例如: for(Confetti c : confetti) { b.draw(someFunction(){strokeWeight(random(10)); } 在五彩纸屑课上会有什么 draw(void myFunc){ for(int i = 0; i < 10; i++) { myFunc(); // run it ellipse(50, 50, 5, 5); } } draw(void myFu
我怎样才能给出一个函数作为参数 例如:
for(Confetti c : confetti) {
b.draw(someFunction(){strokeWeight(random(10));
}
在五彩纸屑课上会有什么
draw(void myFunc){
for(int i = 0; i < 10; i++) {
myFunc(); // run it
ellipse(50, 50, 5, 5);
}
}
draw(void myFunc){
对于(int i=0;i<10;i++){
myFunc();//运行它
椭圆(50,50,5,5);
}
}
你不能。Java不将函数视为第一类对象。您可以使用包含要调用的函数的方法定义接口
interface Confetti {
public void draw();
}
class DrawRandomStroke implements Confetti {
public void draw() {
strokeWeight(random(10));
}
然后将DrawRandomStroke对象传递给方法。如果您想使用一种支持您正在尝试做的事情但仍处于java世界中的语言,请查看groovy或scala。您让我们开始的代码中有很多错误。也许您可以查看一下反射: