感到困惑与输出(即后在Mno
类showValue
法)方法调用输出混乱
class Lab2 {
public static void main(String[] aa) {
int ab=98;
System.out.println("ab in main before\t:"+ab);
Mno ref = new Mno();
ref.showValue(ab);
System.out.println("ab in Main After\t:"+ab);
}
}
class Mno {
void showValue(int ab) {
System.out.println("ab in showvalue before\t:"+ab);
if (ab!=0)
showValue(ab/10);
System.out.println("ab in showvalue After\t:"+ab);
}
}
我得到了下面的输出...它是如何0,9,98后打印显示的值。 ...?
F:\Train\oops>java Lab2
ab in main before :98
ab in showvalue before :98
ab in showvalue before :9
ab in showvalue before :0
ab in showvalue After :0
ab in showvalue After :9
ab in showvalue After :98
ab in Main After :98
Java通过副本传递,而不是通过引用 – nachokk