Well I wrote some code and all I was doing was for loops, but changing which method I called. I tried using a for loop so it’d be a bit neater (and out of curiosity to see if it could be done), but it doesn’t compile when I do it this way, because it doesn’t recognize an item in an array as a method, I think. This is what I have:
String[] moveArray = {moveRight,moveDown,moveLeft,moveUp};
for (i = 0; i < 4; i++) {
while (myWumpus.moveArray[i]) {
myWumpus.moveArray[i];
generator.updateDisplay();
}
}
When I try compile I get
not a statement myWumpus.moveArray[i]();
';' expected myWumpus.moveArray[i]();
(It refers to the first statement in the while loop)
So, I think it’s maybe because I’m making it an Array of type String? Is there a type Method? Is this at all possible? Any solutions welcome :). Also, I can get it to work using 4 while loops, so you don’t need to show me that solution.
You cannot store methods directly in arrays. However you can store objects, which implement the same method differently. For example: