Ich verstehe die For Schleife in Zusammenhang mit einem Array in Java nicht, wer kanns mir verständlich erklären (Nur für Profis)?

...komplette Frage anzeigen

2 Antworten

(Nur für Profis)

Wieso das denn? Ist doch eine Anfängerfrage. Aber egal.

= bitte NIE wie in der Mathematik sehen. Wir können nämlich etwas, was Mathematiker nicht können: Werte umdefinieren.

Wenn der Mathematiker ein x in einer Gleichung hat, dann hat diesee x einen Wert. Und das von Anfang an. Und du kannst den Wert bestimmen.

Bei imperativen/objektorientierten Programmiersprachen kannst du schreiben:

x=3

x=7

x=42

Und das funktioniert. x ändert jeweils den Wert auf das , was rechts vom = steht.

Wieso dann nicht auch schreiben:

x=x+3?

Zuerst wird die rechte Seite ausgewertet.

x=42+3

x=45

Und schon ist x 3 größer als gerade eben.

+= ist eine Kurzschreibweise...

Bedeutet wie du vorhin erwähnt hast:

a+=2

a=a+2

Das ist übrigens auch mit -=, *= und /= möglich...

Zu verstehen ist es so: 

Speicherort=Wert

Wenn das a links vom = steht, wird der Wert in dessen Adressspeicher geschrieben.

Steht das a rechts vom =, so wird der Wert vom Addresspeicher ausgelesen.

Wenn du das a jetzt also einmal links und rechts stehen hast, wird der Vorhandene Wert sozusagen manipuliert um den angegeben Wert/Faktor. 

Es gibt übrigens noch ++ und -- welche +=1 Bzw. -=1 bedeuten...

T0RM0D 03.07.2017, 17:01

In deinem Fall schaut es so aus:

6, 42, 3, 7 stehen im myArray.

sum muss am Anfang zugewiesen werden(Sinngemäß mit 0).

Dann geht es in die Schleife. Was hier passiert ist folgendes:

Es wird sollange jeder Wert in Sum dazu addiert, bis keiner mehr im myArray Vorhanden ist(for-each wäre hier eigentlich besser gewesen...).

Also:

1. durchlauf

Sum=0+6

Sum ist daher jetzt 6

2. durchlauf

Sum=6+42

Sum ist daher jetzt 48

.

.

.


Kleiner Tipp: Lass dir doch einfach mal jeden Schritt ausgeben(in die Konsole/Messagebox oder so) ;)

0

Was möchtest Du wissen?