我需要編寫一個接受兩個int作爲參數,分鐘和最大值的方法。在第一行,我需要打印該範圍內的所有數字(包括)。在下一行中,我以min + 1開頭,將所有數字打印到最大值,然後返回到範圍的前部並打印最小值。下一行我以min + 2開頭,依此類推,直到我用範圍中的每個數字開始重複這個開始。很難解釋,這裏有兩個例子:假設我將1和5作爲最小和最大參數傳遞。我想的方法來打印:我不知道如何重置循環(請參閱示例)
12345
23451
34512
45123
51234
或者,如果3和9過去了,我希望這樣的:
3456789
4567893
5678934
6789345
7893456
8934567
9345678
我已經試過各種事情,我敢肯定有一個簡單的方法來做到這一點,我沒有意識到。我應該這樣做沒有數組或arrayLists。我認爲我有一個很好的工作基礎,但我無法弄清楚從哪裏出發。我的基本代碼打印此:
12345
2345
345
45
5
這:
3456789
456789
56789
6789
789
89
9
我難倒。這裏是我的代碼:
public void printSquare(int min, int max){
for (int i=min; i<=max; i++){
for (int j=i; j<=max; j++){
System.out.print(j);
}
System.out.println();
}
}
聽起來這可能是遞歸的。 – Falmarri 2010-12-12 23:30:35
這不是家庭作業,它來自我一直在閱讀的網站上的一些java示例問題。我不在學校,我只是爲自己學習java =)我會考慮Peter和Raskolnikov的答案,看看我能否自己得出結論。 – Bots 2010-12-13 00:32:41