/**
*
* @author Jackie
*
* 测试不用循环计算1~100的和
*/
public class Test {
public static void main(String[] args) {
System.out.println(new Test().sum(1));
}
int sum ;
/**
* 利用递归计算
* @param i 从i开始
* @return 计算的结果
*/
public int sum(int i)
{
sum = sum + i ;
if(i<100)
{
i = i + 1 ;
sum(i) ;
}
return sum ;
}
}
//看到有用利用 Timer 来做的输出1~100,顺便在这里贴出
import
java.util.Date;
import
java.util.Timer;
import
java.util.TimerTask;
public
class
Test01 {
public
static
void
main(String[] args) {
final
int
len
=
100
;
final
Timer timer
=
new
Timer();
timer.schedule(
new
TimerTask() {
private
int
i
=
1
;
public
void
run() {
System.out.println(i
++
);
if
(i
>
len) {
this
.cancel();
timer.cancel();
}
}
},
new
Date(),
1
);
}
}
/**
*
* @author Jackie
*
* 测试不用循环输出1~100
*/
public class Test {
public static void main(String[] args) {
new Test().print(1);
}
int sum ;
/**
* 利用递归来做
* @param i 将要输出的值
*/
public void print(int i)
{
if(i<=100)
{
System.out.println(i);
i = i + 1 ;
print(i) ;
}
}
}
http://blog.youkuaiyun.com/wingheng/archive/2008/09/18/2942510.aspx
本文介绍了一种不使用传统循环的方式,通过递归算法实现1到100的求和及打印的方法,并附带了一个使用Timer定时任务打印1到100的示例。
6万+

被折叠的 条评论
为什么被折叠?



