public class MischMasch4 {
int zähler = 0;
public static void main(String[] args){
int anzahl = 0;
MischMasch4[] m4a = new MischMasch4[20];
int x = 0;
while(x<10){
m4a[x] = new MischMasch4();
m4a[x].zähler = m4a[x].zähler + 1;
anzahl = anzahl + 1;
anzahl = anzahl + m4a[x].vielleichtNeu(x);
x = x + 1;
}
System.out.println(anzahl + " " + m4a[4].zähler);
}
public int vielleichtNeu(int index) {
if (index < 5){
MischMasch4 m4 = new MischMasch4();
m4.zähler =m4.zähler + 2;
return 1;
}
return 0;
}
}
Ausgabe = 15 1
So jetzt zu meiner Frage. Wie ich auf das Ergebniss von anzahl komme, also 15 ist mir nach längerer Überlegung klar geworden.
Allerdings versteh ich das Ergebniss von m4a[x].zähler nicht.
Nach meiner Überlegung läuft die while Schleife ja 10mal durch, erstellt dabei jedesmal ein neues MischMasch4 Objekt in dem array m4a an der Stelle von x.(grün markiert)
Dann setzt er an jeder m4a[x] den Zähler und zählt jedesmal +1 auf den Zähler dazu.(rot markiert).
Ausgeben will er die 5.Stelle im Array (m4a[4].zähler) welche ja dann im 5. Durchlauf eigentlich 5 sein müsste?
Ich glaub ich bin hier ziemlich auf dem Holzweg, aber da ich noch totaler Java Anfänger bin komm ich momentan einfach nicht weiter, war schon super stolz auf mich dass ich anzahl gelöst habe aber die 2.Ausgabe bringt mich zum verzweifeln.
Kann mir da wer erklären wieso ich auf 1 komme, und falls meine vorherigen Überlegungen mit Objekten ins Array und +1 aufzählen und sowas falsch sind vlt. korrigieren kann.
int zähler = 0;
public static void main(String[] args){
int anzahl = 0;
MischMasch4[] m4a = new MischMasch4[20];
int x = 0;
while(x<10){
m4a[x] = new MischMasch4();
m4a[x].zähler = m4a[x].zähler + 1;
anzahl = anzahl + 1;
anzahl = anzahl + m4a[x].vielleichtNeu(x);
x = x + 1;
}
System.out.println(anzahl + " " + m4a[4].zähler);
}
public int vielleichtNeu(int index) {
if (index < 5){
MischMasch4 m4 = new MischMasch4();
m4.zähler =m4.zähler + 2;
return 1;
}
return 0;
}
}
Ausgabe = 15 1
So jetzt zu meiner Frage. Wie ich auf das Ergebniss von anzahl komme, also 15 ist mir nach längerer Überlegung klar geworden.
Allerdings versteh ich das Ergebniss von m4a[x].zähler nicht.
Nach meiner Überlegung läuft die while Schleife ja 10mal durch, erstellt dabei jedesmal ein neues MischMasch4 Objekt in dem array m4a an der Stelle von x.(grün markiert)
Dann setzt er an jeder m4a[x] den Zähler und zählt jedesmal +1 auf den Zähler dazu.(rot markiert).
Ausgeben will er die 5.Stelle im Array (m4a[4].zähler) welche ja dann im 5. Durchlauf eigentlich 5 sein müsste?
Ich glaub ich bin hier ziemlich auf dem Holzweg, aber da ich noch totaler Java Anfänger bin komm ich momentan einfach nicht weiter, war schon super stolz auf mich dass ich anzahl gelöst habe aber die 2.Ausgabe bringt mich zum verzweifeln.
Kann mir da wer erklären wieso ich auf 1 komme, und falls meine vorherigen Überlegungen mit Objekten ins Array und +1 aufzählen und sowas falsch sind vlt. korrigieren kann.