-3
該功能正常工作,但打印件具有倒三角形。遞歸 - 三角形在循環之前發出呼叫
的職能A anaylse:
public static int Triangle(int n) {
Random r = new Random();
if (n == 1)
return r.nextInt(4) + 1;
for (int i = 0; i < n; i++) {
System.out.print(r.nextInt(4) + 1);
}
System.out.println();
return Triangle(n - 1);
}
}
輸出:
2224
112
11
4
我試圖把遞歸調用之前的for循環,這樣的結果應該是:
1
11
234
4345
但我得到一個編譯錯誤(for循環與它下面的紅線)。
錯誤運行後:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Unreachable code
at test1.Triangle(test1.java:16)
at test1.main(test1.java:6)
可達代碼意味着,你在寫代碼點,在那裏它不能被執行了,比如在一個'return'後面,不可能被執行。 – SomeJavaGuy
請向你展示編譯時未解決的代碼。 –
提示:如果你得到一個編譯錯誤...停止,不要跑,如果你已經知道它已經壞了,那麼運行某些東西是絕對沒有意義的,相反:fo因爲編譯器錯誤信息。轉向它指出的路線;然後繼續閱讀消息。因爲:通常這些錯誤消息是**真的很好。他們告訴你所有你需要知道的。 – GhostCat