递归与For循环的区别
- 递归:知道起点与终点,不知道中间过程,但是循环次数有限制
- For遍历:知道次数
public class digui {
public void gaita(int i){
if(i>1){
this.gaita(i-1);
}
System.out.println("盖第"+i+"层塔");
}
public void zhuanhuan(int j){
if(j!=1){
this.zhuanhuan(j/2);
}
System.out.println(j%2);
}
public static void main(String[] args) {
digui dg=new digui();
dg.gaita(10);
dg.zhuanhuan(100);
}
}
十进制转换为二进制
运行结果:
盖第1层塔
盖第2层塔
盖第3层塔
盖第4层塔
盖第5层塔
盖第6层塔
盖第7层塔
盖第8层塔
盖第9层塔
盖第10层塔
1
1
0
0
1
0
0盖第1层塔
盖第2层塔
盖第3层塔
盖第4层塔
盖第5层塔
盖第6层塔
盖第7层塔
盖第8层塔
盖第9层塔
盖第10层塔
1
1
0
0
1
0
0盖第1层塔
盖第2层塔
盖第3层塔
盖第4层塔
盖第5层塔
盖第6层塔
盖第7层塔
盖第8层塔
盖第9层塔
盖第10层塔
1
1
0
0
1
0
0盖第1层塔
盖第2层塔
盖第3层塔
盖第4层塔
盖第5层塔
盖第6层塔
盖第7层塔
盖第8层塔
盖第9层塔
盖第10层塔
1
1
0
0
1
0
0盖第1层塔
盖第2层塔
盖第3层塔
盖第4层塔
盖第5层塔
盖第6层塔
盖第7层塔
盖第8层塔
盖第9层塔
盖第10层塔
1
1
0
0
1
0
0