void function(int val){ if(val > 0){ function(val-1); } print(val); } function(5);2.
void function(int val){ if(val > 0){ function(--val); } print(val); } function(5);3.
void function(int val){ if(val > 0){ function(val--); } print(val); } function(5);4.
int a = 1; b = a++ + ++a; print(b);Answers:
The first program is simple enough and prints out the numbers 5, 4, 3, 2, 1, 0. The second program prints out the numbers 4, 3, 2, 1, 0, 0.
--val
decrements the value of the variable before assigning it. For example, if a=5, and b=--a, then b=4 and a=4.
The third program throws a StackOverflowError
. val--
assigns the value of the variable first, before decrementing it. For example, if a=5, and b=a--, then b=5 and a=4.
The fourth program prints 4, because b = 1 + 3.