读书人

不要循环计算1~100的和

发布时间: 2012-12-26 14:39:29 作者: rapoo

不用循环计算1~100的和

/**
?*
?* @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.csdn.net/wingheng/archive/2008/09/18/2942510.aspx

读书人网 >编程

热点推荐