gpt4 book ai didi

java - 如何确保 if 语句中的指令(也在 for 循环中)仅执行一次?

转载 作者:行者123 更新时间:2023-12-02 02:41:53 25 4
gpt4 key购买 nike

假设我有这个:

for(int i = 0; i < pointsArray.size(); i++) {
...
some setup stuff
...
if(pointOnMinimap()) {
click(pointsArray.get(i);
}
}

每当它运行时,它都会多次单击小 map 上的点,直到点数组中的下一个点出现。如何确保 click() 对于每个点运行一次?

编辑1正如GhostCat提到的,我添加了点击功能,也许这可能是问题所在。

public void click(int x, int y) {
game.getCanvas().dispatchEvent(new MouseEvent(game.getCanvas(),
MouseEvent.MOUSE_PRESSED,
System.currentTimeMillis(),
0,
x, y,
0,
false));
game.getCanvas().dispatchEvent(new MouseEvent(game.getCanvas(),
MouseEvent.MOUSE_RELEASED,
System.currentTimeMillis(),
0,
x, y,
0,
false));
game.getCanvas().dispatchEvent(new MouseEvent(game.getCanvas(),
MouseEvent.MOUSE_CLICKED,
System.currentTimeMillis(),
0,
x, y,
0,
false));
}

最佳答案

类似于

的东西
for (int i = 0, j = 0; i < pointsArray.size(); i++) {    
if (j == 0 && pointOnMinimap()){
j = 1;
click(pointsArray.get(i);
}

会做的。这是惯用的优雅 C 语言,但可惜在 Java 中它实际上是对 int 类型的滥用。乳蛋饼爱好者和女孩可能希望将 j 定义为 boolean 类型,但随后您需要在 for 循环上添加额外的作用域 block 。

关于java - 如何确保 if 语句中的指令(也在 for 循环中)仅执行一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45325599/

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