В то время как рекурсивный метод вызывает, как значения увеличиваютсяJAVA

Программисты JAVA общаются здесь
Anonymous
В то время как рекурсивный метод вызывает, как значения увеличиваются

Сообщение Anonymous »

Код: Выделить всё

public class Recursion20
{
static void printMe(int n)
{
if (n < 0)                               // Base Case
return;

printMe(n - 1);                          // Recursive Case

System.out.print(n + " ");
}

public static void main(String[] args)
{
printMe(6);
}
}

/*
Output:
-------
0 1 2 3 4 5 6
*/
В какой-то момент 'n' становится '-1'.
Итак, if(n < 0), т. е. if(-1 < 0), условие if удовлетворяет и он возвращает оператор return.
Затем он печатает оператор s.o.p, т.е. s.o.p(n);
Но при печати оператора s.o.p, т.е. s.o.p(n); Он печатает значение «n» как «0». Как?.
Затем он печатает значения «n» как 0 1 2 3 4 5 6. Как увеличиваются значения «n»?

Подробнее здесь: https://stackoverflow.com/questions/789 ... ncremented

Вернуться в «JAVA»