Arrays

NoobGrammierer

Neues Mitglied
Hallo PROgrammierer,

ich versuche gerade ein eigenen Spiel zu kreieren.
Ich habe zunächst ein Array mit Teilnehmern erstellt welches mir auch auch schön die Teilnehmer als String anzeigt.
Jetzt brauche ich ein mindestens 2 Dimensionales Array welches das Spielfeld sein soll und worauf die Teilnehmer Platz nehmen sollen.
Ich mache zur Zeit eine Weiterbildung und werde noch viel häufiger fragen stellen.

1.
In dem Spiel können 2-4 Spieler mit machen (mehr oder weniger nimmer er nicht an wie gewünscht)<---Check
2.
Danach werden die Namen der Teilnehmer eingetippt. Die dann in einem einfachen Array eingetragen werden <--- Check
3.
Die Spieler sollen dann auf einem Spielfeld landen welches (Spielfeld [Teilnehmer.length][Dynamisch] groß ist). Die Zeilen des Arrays sollen dynamisch je nach Eingabe der Spielerzahl sein und die Spalten sollen die Länge von 10 haben für das 10 Fragen Quiz welches ich beabsichtige.<--- Offen
4.
Wenn ein Spieler eine Frage richtig beantwortet kommt er oder sie eine Spalte im Array weiter.<---Offen

Nehme jeden Vorschlag an und bedanke mich schon mal im Voraus. :)
 

Anhänge

  • Spiel.png
    Spiel.png
    60,5 KB · Aufrufe: 5

kneitzel

Top Contributor
Als erstes ein Hinweis zu den üblichen Schreibweisen: Klassen starten mit einem großen Buchstaben, Variablen und Methoden mit einem kleinen Buchstaben!

Das Verständnis von Arrays ist hier wichtig. Ein 2D Array ist ein Array von Arrays. Und Array-Variablen speichern Referenzen:
Spielfeld[i]=ListeTeilnehmer;
Hier wird also in dem Array Spielfeld, das Arrays enthält die Referenz umgesetzt auf das Teilnehmer-Array. Das heisst, es wird jetzt nicht mehr auf ein Array mit 10 Elementen verwiesen sondern auf das Array mit den Teilnehmern. Wenn Du also einmal vor der Zuweisung und nach der Zuweisung Spielfeld[i].length ausgibst, dann wirst Du schnell sehen, was ich meine.

(Das war die kurze Antwort - nun kommt noch der Versuch, eine Herangehensweise zu erläutern.)

Daher ist hier ganz wichtig, dass Du genau erfasst, was Du machen willst. Zur Not: Mal es Dir auf!

Du hast von mir aus eine ListeTeilnehmer mit 3 Strings (A, B und C oder so): Also Drei Kästen aufmalen und da dann A, B, C reinschreiben.
Dann hast Du das Spielfeld. Das hat dann also mehrere Kästchen, die Du malen musst: Es ist drei Felder hoch und dann kommen 10 Felder jeweils nebenher.


Dann hast Du also sowas auf dem Zettel:
Code:
ListeTeilnehmer:
[A]
[B]
[C]

SpielFeld:
[ ][ ][ ][ ][ ][ ][ ][ ][ ][ ]
[ ][ ][ ][ ][ ][ ][ ][ ][ ][ ]
[ ][ ][ ][ ][ ][ ][ ][ ][ ][ ]

Was genau soll jetzt passieren? Mache es auf dem Zettel von Hand! Und da dann genau überlegen, was Du wieso machst.

Also einfach mal ein fiktives Gespräch durchspielen:

"Das A soll in das erste Feld oben Links"
--> Welches A? Woher nimmst Du das denn?
--> Was für Felder meinst Du? Ich sehe mehrere!

"Der Inhalt des ersten Feldes von ListeTeilnehmer soll in das erste Feld links oben von Spielfeld."
--> Ja super! Das ist dann genau genug - jetzt in Java!

Spielfeld[0][0] = ListeTeilnehmer[0];
--> Top, wie geht es nun weiter?

Das mag sich kindisch anfühlen. Aber das ist due Denkweise, zu der Du kommen musst. Am Anfang malst Du Dir am besten wirklich auf, was für Variablen du hast und was da drin ist. Dann kannst Du Zuweisungen machen.

Wenn Du etwas auf dem Zettel machst und nichts im Kopf machst, dann hast Du alles, was Du brauchst, auf dem Zettel. Das läuft später bestimmt alles im Kopf und nur komplexere Dinge werden aufgemalt. Aber das wäre meine Empfehlung.

Aber zurück zu Deinem Zettel:
Du hast jetzt 3 Schritte manuell gemacht, und diese sogar in Java Code fassen können.
Nun hast Du aber ggf. nicht 3 sondern 2 oder 4 Teilnehmer. Also machst du daraus eine Schleife.

Das ist dann übrigens eine normale Aktion, die regelmäßig vorkommt: Du hast doppelten Code (Also Codestücke, die [fast] gleich sind) und fasst diesen zusammen.

Und weil ich da etwas beschrieben habe an Vorgehen möchte ich noch einen weiteren Fall aufnehmen:
Du kannst komplexe Abläufe auch in einen Schritt packen. Wichtig ist, dass der Schritt genau ist.
Beispiel: Sortiere die ListeTeilnehmer nach Alphabet.

Das ist ein komplexer Schritt. Aber der ist ok. Der ist dann aber auch einfach zu Java umwandelbar:
ListeTeilnehmer = sortiere(ListeTeilnehmer);

Sowas ist auch legitim. Nur eben musst Du dann ggf. auf einem neuen Zettel überlegen, was denn da zu tun ist.

Ich weiss nicht, ob ich dies vernünftig erläutern konnte. Aber das ist ein Thema, das ich hier im Forum öfters anbringe weil ich es für sehr wichtig erachte. Denn wenn Du dieses aufmalen und mit "Stift und Zettel durchspielen" übst, dann wird das später bei komplexeren Dingen deutlich leichter für Dich.
 

NoobGrammierer

Neues Mitglied
Hallo und vielen dank für deine Antwort. Ich werde es so machen wie du es gesagt hast. Mein Problem ist nämlich das ich denke das ich alles ausm Kopf heraus abtippen kann. Es ist genauso wie das Malen von einem Bild. Wenn man eine Obstschale vor sich hat kann man diese auch viel besser malen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
W n verschiedene Arrays zufällig ausgeben - mit der Random-Klasse? Java Basics - Anfänger-Themen 8
U zwei 2D arrays auf gleich sein überprüfen Java Basics - Anfänger-Themen 14
melaniemueller Lagerverwaltung erstellen - mehrdimensionale Arrays Java Basics - Anfänger-Themen 42
C initialisieren eines arrays richtiger Größe und mit geeignetem Datentyp Java Basics - Anfänger-Themen 26
Bademeister007 Elemente aus zwei verschiedenen Arrays miteinander vergleichen und gegeben falls entfernen Java Basics - Anfänger-Themen 14
A Arrays aufsummieren Java Basics - Anfänger-Themen 11
C Wie 2 Arrays zusammenfügen und sortieren? Java Basics - Anfänger-Themen 11
S Arrays aneinanderketten Java Basics - Anfänger-Themen 20
Sinan Arrays auflisten ohne Wiederholung Java Basics - Anfänger-Themen 28
D Hilfe beim Erzeugen eines Arrays NullPointerException wird ausgelöst Java Basics - Anfänger-Themen 11
R Werte und Reihenfolge in 2d Arrays vergleichen Java Basics - Anfänger-Themen 5
D Verschlüsslungsaufgabe / Arrays Java Basics - Anfänger-Themen 6
L Methode für Zweidimensionale Arrays Java Basics - Anfänger-Themen 4
L Methode zum invertieren eines Arrays Java Basics - Anfänger-Themen 7
S zweidimensionale char arrays Java Basics - Anfänger-Themen 14
J Methoden Mehrdimensionale Arrays übereinander legen Java Basics - Anfänger-Themen 5
D Verwirrung bei Streams aus primitiven Arrays Java Basics - Anfänger-Themen 2
P Arrays mit verschiedenen Längen miteinander dividieren. Java Basics - Anfänger-Themen 1
P Wie kann ich die Zahlen dieses Arrays dividieren? Java Basics - Anfänger-Themen 2
N 2D Arrays jedes xy vergleichen Java Basics - Anfänger-Themen 7
J Traveling Salesman Problem [Arrays] Java Basics - Anfänger-Themen 9
M Arrays mit mehreren Werten über JOptionPane initialisieren Java Basics - Anfänger-Themen 12
Kawastori Größe eines Arrays bestimmen Java Basics - Anfänger-Themen 13
Zeppi Arrays[i] Java Basics - Anfänger-Themen 7
Lena_2611 Vergleich von Array1 Index mit Array2 Wert und erzeugen eines neues Arrays Java Basics - Anfänger-Themen 8
J B-Sprache mit Arrays ausführen Java Basics - Anfänger-Themen 18
A Teilarrays eines 2D-Arrays sortieren Java Basics - Anfänger-Themen 4
C Arrays - deklarieren, initialisieren? Ist das ein Objekt? Java Basics - Anfänger-Themen 3
K Sudoku mit 2D Arrays Java Basics - Anfänger-Themen 19
T Vertikales Histogramm mit Arrays Java Basics - Anfänger-Themen 3
JD_1998 Arrays einlesen, zwischenspeichern und wieder ausgeben Java Basics - Anfänger-Themen 8
Z Kein überprüfen des gesamten Arrays möglich.(Viergewinnt Spiel) Java Basics - Anfänger-Themen 6
F Arrays: Mathematische Funktion Java Basics - Anfänger-Themen 19
mihe7 Von Datentypen und (mehrdimensionalen) Arrays Java Basics - Anfänger-Themen 4
A Teilen eines Arrays Java Basics - Anfänger-Themen 5
DorFey Sortieren eines mehrdimensionalen Arrays Java Basics - Anfänger-Themen 8
N Probleme beim printen von Arrays durch for Schleife Java Basics - Anfänger-Themen 3
L If und else bei 2 Dimensionalen Arrays Java Basics - Anfänger-Themen 8
1 Arrays Java Basics - Anfänger-Themen 7
M Rückgabe eines Arrays Java Basics - Anfänger-Themen 10
L Addition von Arrays über die Parameterliste Java Basics - Anfänger-Themen 11
Z Erste Schritte Indexe innerhalb eines Arrays zusammensählen Java Basics - Anfänger-Themen 14
N Länge eines Arrays in einem Objekt testen Java Basics - Anfänger-Themen 51
S Übergabe von Arrays an Methoden Java Basics - Anfänger-Themen 20
D Collections Arrays in ArrayList abspeichern Java Basics - Anfänger-Themen 6
A Freie Stelle eines Arrays Java Basics - Anfänger-Themen 17
H Ein gegebenes Int Array zu Zwei Arrays zurück geben Java Basics - Anfänger-Themen 6
J 2D Arrays summieren Java Basics - Anfänger-Themen 21
J zwei String Arrays miteinander vergleichen Java Basics - Anfänger-Themen 18
A Java.util.Arrays Java Basics - Anfänger-Themen 15
T Methodenverknüpfung mit Arrays Java Basics - Anfänger-Themen 4
R Zugriff auf den Index eines Arrays, welches ein Objekt ist. Java Basics - Anfänger-Themen 4
F Eine Zahl mit Arrays vergleichen Java Basics - Anfänger-Themen 7
A 2d Arrays aus txt.file einlesen Java Basics - Anfänger-Themen 16
B Arrays Java Basics - Anfänger-Themen 4
P Arrays "automatisch" erstellen lassen Java Basics - Anfänger-Themen 12
B Nur eine bestimmte Anzahl an Arrays ausgeben Java Basics - Anfänger-Themen 9
H Gemeinsame Schnittmenge zweier Arrays ausgeben Java Basics - Anfänger-Themen 12
H Größte Duplikat (Größte Doppelte Wert) eines Arrays ausgeben Java Basics - Anfänger-Themen 9
A Summe des Arrays pd mit alternativer Schleife Java Basics - Anfänger-Themen 2
S Elemente eines Arrays bei Ausgabe auslassen Java Basics - Anfänger-Themen 2
M Verständnisproblem der Rekursion bei Arrays Java Basics - Anfänger-Themen 8
F Mehrdimensionale Arrays Java Basics - Anfänger-Themen 12
M Arrays in Funktion Kopieren und Bearbeiten Java Basics - Anfänger-Themen 4
W Erste Schritte Arrays befüllen und ausgeben Java Basics - Anfänger-Themen 11
J Inhalte von zwei Arrays vertauschen?! Java Basics - Anfänger-Themen 6
Curtis_MC Erzeugung mehrdimensionaler Arrays Java Basics - Anfänger-Themen 2
O zwei Arrays nach Werten durchsuchen und zusammenfügen Java Basics - Anfänger-Themen 3
F Arbeiten mit Arrays Java Basics - Anfänger-Themen 2
D Wert des Arrays unter Bedingungen ändern Java Basics - Anfänger-Themen 1
M Werte des Arrays addieren Java Basics - Anfänger-Themen 5
L Zufällige Übereinstimmungen in 2 Arrays Java Basics - Anfänger-Themen 3
A Arrays kombinieren (länge eines Arrays kann 0 sein) Java Basics - Anfänger-Themen 6
A Alle true Werte eines boolean Arrays herausfiltern Java Basics - Anfänger-Themen 19
iman Variablen Dynamik Arrays Java Basics - Anfänger-Themen 9
R Arrays Java Basics - Anfänger-Themen 4
A Methoden Arrays Java Basics - Anfänger-Themen 20
D Unterschied == und equals in Arrays Java Basics - Anfänger-Themen 2
V Schleife für das Einlesen von Werten für int Variablen, die Bestandteil von Arrays sein sollen Java Basics - Anfänger-Themen 16
V Probleme mit Arrays Java Basics - Anfänger-Themen 8
S Arrays erstellen Java Basics - Anfänger-Themen 6
D Ergebnisse in Arrays ausgeben? Java Basics - Anfänger-Themen 11
M Die Inhalte eines Arrays mit der Methode Arrays.toString ausgeben Java Basics - Anfänger-Themen 4
R Weitergabe von Arrays aus Methoden in andere Klasse Java Basics - Anfänger-Themen 5
scratchy1 vollständige und unvollständige Arrays ausgeben Java Basics - Anfänger-Themen 11
L Tiefe Kopie einer Zeile eines zweidimensionalen Arrays Java Basics - Anfänger-Themen 1
L Dynamische Anzahl an Arrays mit verschiedenen Namen erzeugen Java Basics - Anfänger-Themen 6
L Addition von 1 bis n, in Arrays umstellen Java Basics - Anfänger-Themen 15
M Deklarieren und Initialisieren von Arrays Java Basics - Anfänger-Themen 3
O Arrays sortieren in einer Methode Java Basics - Anfänger-Themen 2
E Mehrere Arrays addieren mit Übertrag Java Basics - Anfänger-Themen 13
B Frage zu Arrays Java Basics - Anfänger-Themen 3
O Unterschied Arrays, Listen, Mengen Java Basics - Anfänger-Themen 24
F Arrays im Konstruktor Java Basics - Anfänger-Themen 5
E Methoden 2 Arrays sortieren (MergeSort) Java Basics - Anfänger-Themen 3
R 2D Arrays mit vorgegebenem Muster Java Basics - Anfänger-Themen 2
R Auf eine Stelle [i] des Arrays zugreifen Java Basics - Anfänger-Themen 7
M Methoden Arrays.deepequals() funktioniert nicht Java Basics - Anfänger-Themen 2
O Länge eines Arrays Java Basics - Anfänger-Themen 6
X Arrays untereinander schreiben Java Basics - Anfänger-Themen 4

Ähnliche Java Themen


Oben