# verschachtelte For-Schleife



## Achim89 (24. Jan 2012)

Hey Leute, ich hätte da mal ne Frage an euch. UNd zwar hab ich folgende verschachtelte For-Schleife.


```
for(int i = 0; i < 2; i++){
			for(int j = 0; j < 2; j++){
			if(i==j){
			continue;}
			System.out.print(i + " , " + j);
			System.out.println();
			}
			}
```

Kann mir einer erklären, warum da 0, 1 //1, 0 rauskommt?


----------



## HimBromBeere (24. Jan 2012)

Weil du bei Gleichheit ((0, 0) bzw. (1, 1)) den nächsten Schleifendurchlauf startest (continue)


----------



## Achim89 (24. Jan 2012)

Ja, soweit habe ichs verstanden.

Beim ersten Durchlauf ist doch i und j 0 oder?

Und beim 2ten Durchlauf ist doch dann i und j 1 oder, weil es hochzählt?


----------



## HimBromBeere (24. Jan 2012)

Ööööööhm, kommt drauf an, was du unter Durchlauf verstehst, eine Runde in der äußeren oder in der inneren Schleife? 
Da deine Schleifen verschachtelt sind, muss die innere Schleife erst zweimal komplett durchgelaufen sein, damit die äußere wieder ausgeführt wird.

EDIT:
Das Ganze hat folgenden Ablauf:
i = 0, j = 0;
i = 0; j = 1;
i = 0; j = 2; Bedingung innere Schleife nicht erfüllt

i = 1; j = 0;
i = 1; j = 1;
i = 1; j = 2; Bedingung innere Schleife nicht mehr erfüllt

i = 2; Bedingung äußere Schleife nicht mehr erfüllt.


----------



## Achim89 (24. Jan 2012)

Ach ok, daran lags, ich wusste nicht dass die innere zuerst komplett durchlaufen wird.

Vielen Dank


----------

