如何 move/iterate 转发到数组中的下一个值 (java/android)
How to move/iterate forward to next value in Array (java/android)
花了最后 1-2 个小时寻找答案,但还没有完全明白,我希望它很简单。
我创建了一个自定义 class 数组,其中只有少量值(其中 Person 是 Class):
Person person[] = new Person[2];
(注意我将用像 numberOfPeople 这样的变量替换 2)
我需要创建一个我可以在需要时调用的方法(例如按下按钮时),它将从当前人移动到数组中的下一个人(到达末尾时回到开头) .
换句话说:按下按钮 - 从 player0 移动到 player1。
我一直在研究如何使用 For、ForEach、If 等来执行此操作,但无法解决。
通过 Vincent Ugenti 的回答解决。
万一其他菜鸟遇到这个问题来解决他们的问题,有几个后续的菜鸟问题,我试图用一个变量定义数组中的值的数量,该变量直到创建数组后才被赋予值(导致即时崩溃)然后我忘了对代码做任何事情,这不会 运行 每个对象构造函数都需要单独完成。
- 创建一个变量,例如"currentPerson"
- 在你的事件处理程序中(每当你想前进到下一个人时),
currentPerson = (currentPerson + 1) % numberOfPeople
- 那么现在的人总是
person[currentPerson]
跟踪当前索引并挂钩按钮事件是您想要做的。
按下按钮时检查您的变量,将其递增 1 并检查该值是否不大于数组的长度。
如果它不大于数组长度,您可以获取该元素,否则将计数重置为 0 并执行您需要执行的操作。
如果您只是在按下按钮(事件处理程序)时执行此操作,则不需要使用任何循环。
花了最后 1-2 个小时寻找答案,但还没有完全明白,我希望它很简单。
我创建了一个自定义 class 数组,其中只有少量值(其中 Person 是 Class):
Person person[] = new Person[2];
(注意我将用像 numberOfPeople 这样的变量替换 2)
我需要创建一个我可以在需要时调用的方法(例如按下按钮时),它将从当前人移动到数组中的下一个人(到达末尾时回到开头) .
换句话说:按下按钮 - 从 player0 移动到 player1。
我一直在研究如何使用 For、ForEach、If 等来执行此操作,但无法解决。
通过 Vincent Ugenti 的回答解决。 万一其他菜鸟遇到这个问题来解决他们的问题,有几个后续的菜鸟问题,我试图用一个变量定义数组中的值的数量,该变量直到创建数组后才被赋予值(导致即时崩溃)然后我忘了对代码做任何事情,这不会 运行 每个对象构造函数都需要单独完成。
- 创建一个变量,例如"currentPerson"
- 在你的事件处理程序中(每当你想前进到下一个人时),
currentPerson = (currentPerson + 1) % numberOfPeople
- 那么现在的人总是
person[currentPerson]
跟踪当前索引并挂钩按钮事件是您想要做的。
按下按钮时检查您的变量,将其递增 1 并检查该值是否不大于数组的长度。
如果它不大于数组长度,您可以获取该元素,否则将计数重置为 0 并执行您需要执行的操作。
如果您只是在按下按钮(事件处理程序)时执行此操作,则不需要使用任何循环。