gpt4 book ai didi

java - Java可以将方法存储在数组中吗?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:04:34 24 4
gpt4 key购买 nike

好吧,我写了一些代码,我所做的只是循环,但改变了我调用的方法。我尝试使用 for 循环,这样它会更整洁(并且出于好奇想看看它是否可以完成),但是当我这样做时它不会编译,因为它无法识别其中的项目我认为,数组作为一种方法。这是我的:

String[] moveArray = {moveRight,moveDown,moveLeft,moveUp};
for (i = 0; i < 4; i++) {
while (myWumpus.moveArray[i]) {
myWumpus.moveArray[i];
generator.updateDisplay();
}
}

当我尝试编译时,我得到了

not a statement myWumpus.moveArray[i]();
';' expected myWumpus.moveArray[i]();

(指while循环中的第一条语句)

所以,我认为这可能是因为我正在将其设为 String 类型的数组?有类型方法吗?这是可能吗?欢迎任何解决方案:)。另外,我可以使用 4 个 while 循环让它工作,所以你不需要向我展示那个解决方案。

最佳答案

您不能将方法直接存储在数组中。但是,您可以存储以不同方式实现相同方法的对象。例如:

Mover[] moveArray = {new RightMover(), new DownMover() new LeftMover(), new UpMover() };
for (i = 0; i < 4; i++) {
while (myWumpus.moveArray[i]) {
moveArray[i].move();
generator.updateDisplay();
}
}

关于java - Java可以将方法存储在数组中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2172718/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com