日期:2014-05-20  浏览次数:20625 次

一个关于递归的小问题。。。奇怪的现象。。。
Java code

public class test1 {
    public void printout(int n)
    {
        if(n>=10)
        {
            printout(n/10);//递归 最后得到7
        }
        System.out.println(n);//这一步 又加回去了!变成76432  不晓得为什么?大神解决下!
    }
    public static void main (String[] arg)
    {
        int n=76432;
        test1 t=new test1();
        t.printout(n);
    }

}

输出结果是:
7
76
764
7643
76432

------解决方案--------------------
粗了误人子弟

Java code
int n=333;
        if(n>10){//条件符合
            int n1=n/10;
           
            if(n1>10){//条件符合
                int n2=n1/10;
                if(n2>10){//条件不符合,
                    
                }
                System.out.println(n2);
            }
            System.out.println(n1);
        }
        System.out.println(n);