Я пытаюсь заставить разумного агента повернуть направо 3 раза. Поскольку вы не можете возвращать несколько объектов, как я могу позвонить this.buildPhysicalAction(TurnRightAction.class)
3 раза подряд?Java: Как вы возвращаете несколько объектов по порядку?
public class VacuumWorldExplorerMind extends VacuumWorldDefaultMind {
@Override
public EnvironmentalAction decide(Object... parameters) {
PerceiveAction range = new PerceiveAction();
VacuumWorldCoordinates currentLocation;
this.buildPhysicalAction(TurnRightAction.class);
this.buildPhysicalAction(TurnRightAction.class);
this.buildPhysicalAction(TurnRightAction.class);
while (true) {
// if perceive range-checkForWall == 1
// turn left
// count steps made = stepsMade
if (range.getPerceptionRange() == 1) {
return this.buildPhysicalAction(TurnLeftAction.class);
}
return this.buildPhysicalAction(MoveAction.class);
}
}
}
Вы можете вернуть массив, который может содержать несколько значений. –
Как я могу добавить this.buildPhysicalAction (TurnRightAction.class) в массив? Вы имеете в виду ArrayList? – Naomi
Slighlty не связан, но могу ли я спросить, что такое точка цикла while (true)? Код всегда возвращается на первую итерацию, так что цикл кажется вроде бессмысленным –