我需要编写一个接受两个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