Variablen Variable durch die direkt auf verschiede Objekte zugegriffen werden kann

flowbob

Mitglied
Hallo zusammen!
Wie der Titel schon vermuten lässt suche ich eine Möglichkeit eine Variable zu definieren durch die direkt auf verschiede Objekte zugegriffen werden kann. Ich weiß, hört sich blöd an, aber ich kanns nicht besser beschreiben. Durch ein Beispiel wirds vllt klar:

Ich habe ein einfaches Spiel, dessen Ablauf klar definiert ist. Es sollen zb. Karten gelegt werden. Wie kann ich jetzt das ganze mit mehreren Spielern machen ohne jedesmal den ganzen Code für den Ablauf zu kopieren und dann spieler1 zu spieler2 zu ändern? D.h. ich will den Ablauf einfach einmal schreiben und dann immer eine Variable "spieler" verwenden (der spieler wird vor jeder runde bestimmt).

Wird einigermaßen klar was ich suche? Mangels konkreten Begriffen, nach denen ich google befragen könnte, habe ich da leider auch nichts gefunden.. :/

Hoffentlich könnt ihr mir helfen!

Gruß,
Flo
 
Indem du den Code in eine Methode auslagerst.

ach ja 😀 sollte natürlich gehen... ich **** 😵 :idea:
THX!


was ich suche hat leider nichts mit arrays oder arraylisten oder ähnlichem zu tun. danke trotzdem!
 
Manchmal sind die Dinge einfach zu offensichtlich, um auf sie zu kommen. *schmunzelt*

Ich denke faetzinator meinte, du solltest die Spieler in einer Liste
Code:
spielerListe
vorhalten statt in
Code:
spieler1
,
Code:
spieler2
, ..., dann könntest du die Codeverdopplung auch durch eine Schleife

Java:
for (Spieler spieler : spielerListe) {
   ...
}

vermeiden.

Mit der Methodenidee kannst du dann noch den Schleifenkörper in eine Methode auslagern, falls da zu viel passiert.
 
Zuletzt bearbeitet:
Wenn du nicht auf Arrays oder Listen hinauswillst, dann vielleicht das? Du solltest zuerst eine Klasse [c]Spieler[/c] (oder besser [c]Player[/c]) haben. Diese implementiert irgendwelche Methoden, welche du dann pro Spieler aufrufen kannst. Also so was:
Java:
do {
    String name = readSomeMightyName();
    Player player = new Player(name);
    player.doSomething();
    // oder...
    Game game = new Game(player);
    game.doSomething();
    // ...
} while (!isExiting);
 

Neue Themen


Zurück
Oben