Bueno, escribí un código y todo lo que hacía era para bucles, pero cambiaba el método al que llamaba. Intenté usar un ciclo for para que fuera un poco más nítido (y por curiosidad para ver si se podía hacer), pero no se compila cuando lo hago de esta manera, porque no reconoce un elemento en una matriz como método, creo. Esto es lo que tengo:¿Puede Java almacenar métodos en matrices?
String[] moveArray = {moveRight,moveDown,moveLeft,moveUp};
for (i = 0; i < 4; i++) {
while (myWumpus.moveArray[i]) {
myWumpus.moveArray[i];
generator.updateDisplay();
}
}
Cuando intento compilar consigo
not a statement myWumpus.moveArray[i]();
';' expected myWumpus.moveArray[i]();
(Se refiere a la primera instrucción del bucle while)
Por lo tanto, creo que es tal vez porque ¿Lo estoy convirtiendo en una matriz de tipo String? ¿Hay algún tipo de Método? ¿Es esto posible? Cualquier solución bienvenida :). Además, puedo hacer que funcione usando 4 ciclos while, por lo que no es necesario que me muestres esa solución. ¡Gracias!
Muy buena explicación. Me quedaré con los cuatro bucles por ahora, pero si es mucho más que eso, intentaré esto. – Paul
Una variación es utiliza enums. Necesita pasar el objeto operado a través de un parámetro en la llamada al método, en lugar del constructor. –