hmm ok,
hmm ist das syntaks mässig richtig? egal
also
damit wird eine integer Variable deklariert die genau eine ganze Zahl speichern kann, soweit klar oder?
jetzt kommt es vor das mehere Variablen benötigt werden, die aber alle gleiche informationen speichern sollen. in deinem bsp das spiel feld.
nun wäre es möglich 9 verschiedene variablen anzulegen
Code:
char Feld1;
char Feld2;
char Feld3;
char Feld4;
char Feld5;
char Feld6;
char Feld7;
char Feld8;
char Feld9;
ok wie zu sehen ist, könnte das den quellcode zimlich unübersichtlich machen.
zb wenn jedes feld ein bestimmten buchstaben binhalten soll, mussten jetzt 9 zuweisungen vollzogen werden. wäre hier noch möglich, aber was ist wenn es ein spielfeld von 1000 oder 10000 felder gibt?
daher gibt es ein array,
ein array ist nichts anderes als eine variable die mehr als eine zahl oder zeichen... speichern kann.
im obigen bsp wäre es:
Code:
char[] Feld = new char[9];
damit legen wir ein Array an, mit dem namen Feld und es besteht nun aus 9 feldern, also wir können über ein index 9 verschiedene chars drin speichern
und zwar
Code:
Feld[0] = 'X';
Feld[1] = 'O';
wichtig ist dabei, in der informatik wird immer bei null angefangen zu zählen.
das heißt der kleinste index ist null. wenn du dir jedoch oben die deklaration anschaust, habe ich da neun reingeschrieben. das bedeutet das es neun felder gibt, also bei der deklaration wird bei eins angefangen zu zählen.
der größte vorteil ist jetzt, wir können es auch in eine schleife packen.
beispiel, wir wollen alle neun felder mit X voll schreiben
Code:
int i;
char[] Feld = new char[9];
for(i = 0; i < 9; i++) // i < 9 weil der größte index 8 ist, denn 0 bis 8 sind 9 felder
{
Feld[i] = 'X'; // hier wird das array über den index angesprochen und mit einer zuweisung beschrieben
}
das array besitzt auch ein paar nützliche eigenschaften zb count, in den bsp könnten wir also auch schreiben
Code:
for(i = 0; i < Feld.Count; i++) // Count gibt hier die anzahl der felder zurück 9, nicht 8
klar?
wenn nicht frag