Hi Leute,
ich schreibe im Moment ein Programm zum Zauberwürfel-lösen. Ich hab' mir gedacht, ich lege ein 3x3x3-Array an, in dem ich die einzelnen Steine speichere. 26 Steine sind allerdings eine Qual, jedes mal einzeln anzusprechen - vor allem bei der Initialisierung des Cubes. Ich habe eine 2D-Eingabemaske angefertigt (dieses Kreuz, wenn man einen Würfel aufklappt), die 54 Felder hat - die einzelnen "Plättchen" des Cubes. Die einzelnen Steine sind nach dem Muster Breite - Höhe - Tiefe benannt, der Stein links oben vorne heißt z.B. RUF (Right Up Front). Die einzelnen Textfelder der Eingabemaske sind ähnlich benannt - sie fangen mit ip für Input an, dann kommt der Stein, zu dem sie gehören, und dann die Seite, die sie ausfüllen. Das obere Plättchen vom RUF-Stein würde also ins Eingabefeld ipRUF_U geschrieben werden.
Meine Frage ist jetzt, damit ich beim Initialisieren (und z.T. auch später) nicht alles "zu Fuß" schreiben muss: (Wie) kann ich ein Objekt über einen String ansprechen? Als schleife hab ich mir das so vorgestellt:
Jetzt habe ich einen String, der dem Namen des gewünschten Textfeldes entspricht. Aber wie benutze ich diesen String, um das Textfeld tatsächlich anzusprechen?
Danke schon mal im Voraus
ich schreibe im Moment ein Programm zum Zauberwürfel-lösen. Ich hab' mir gedacht, ich lege ein 3x3x3-Array an, in dem ich die einzelnen Steine speichere. 26 Steine sind allerdings eine Qual, jedes mal einzeln anzusprechen - vor allem bei der Initialisierung des Cubes. Ich habe eine 2D-Eingabemaske angefertigt (dieses Kreuz, wenn man einen Würfel aufklappt), die 54 Felder hat - die einzelnen "Plättchen" des Cubes. Die einzelnen Steine sind nach dem Muster Breite - Höhe - Tiefe benannt, der Stein links oben vorne heißt z.B. RUF (Right Up Front). Die einzelnen Textfelder der Eingabemaske sind ähnlich benannt - sie fangen mit ip für Input an, dann kommt der Stein, zu dem sie gehören, und dann die Seite, die sie ausfüllen. Das obere Plättchen vom RUF-Stein würde also ins Eingabefeld ipRUF_U geschrieben werden.
Meine Frage ist jetzt, damit ich beim Initialisieren (und z.T. auch später) nicht alles "zu Fuß" schreiben muss: (Wie) kann ich ein Objekt über einen String ansprechen? Als schleife hab ich mir das so vorgestellt:
Java:
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
for (int k = 0; k< 3; k++) {
String currentStone = cube[i][j][k].getName(); //liefert im o.g. Beispiel "RUF" zurück
String currentTextfield = "ip" + currentStone + "_U";
}
}
}
Jetzt habe ich einen String, der dem Namen des gewünschten Textfeldes entspricht. Aber wie benutze ich diesen String, um das Textfeld tatsächlich anzusprechen?
Danke schon mal im Voraus