簡體   English   中英

為什么主方法不被稱為相同的否。每次執行時在java中遞歸的次數?

[英]Why is main method not getting called same no. of times recursively in java every time it is executed?

當我試圖運行這個程序幾次的最終值i114071141711400顯示堆棧溢出錯誤之前等。 為什么每次執行該程序時i的最終值都不相同?

public class MainRecursive {
    static int i=0;

    public static void main (String arg[])
    {
        i++;
        System.out.println(i);

        main(arg);
    }
}

嘗試添加System.out.flush(); 印刷后。

由於堆棧大小沒有變化,每次運行時我得到相同的值,但我認為println()在異常更新輸出之前被異常中斷 - 這取決於控制台,操作系統等而不能是確定性的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM