Danke fuer deine Erklaerung, CSHW89.
Ich versuche mal was, um zu erklaeren, was fuer mich so undurchsichtig ist.
Hier die Methode mit den Werten der Variablen, so wie ich das verstehe:
down2(3) aufrufen...
[CODE]
static void down2( 3 ){
if ( 3 <= 0 )
return;
down2( 3 - 1 ); // Ruft down2(2) auf
System.out.print( 3 + ", "); // Noch keine Ausgabe
}
[/CODE]
[CODE]static void down2( 2 ){
if ( 2 <= 0 )
return;
down2( 2 - 1 );//Ruft down2(1) auf
System.out.print( 2 + ", ");//Noch keine Ausgabe
}[/CODE]
[CODE]static void down2( 1 ){
if ( 1 <= 0 )
return;
down2( 1 - 1 );//Ruft down2(0) auf
System.out.print( 1 + ", ");//Noch keine Ausgabe
}
[/CODE]
[CODE]static void down2( 0 ){
if ( 0 <= 0 )
return; // Springt zu System.out
down2( 0 - 1 );//Ruft down2(-1) auf ???? Da hakt es bei mir!
System.out.print( 0 + ", ");// Ist doch 0 oder nicht?
}
[/CODE]
Es ist sicher ganz einfach, aber ich stehe echt im Moment auf dem Schlauch. 