/*
* 递归函数
* 什么是递归?
* 在一个方法的内部,对自身进行调用,又叫做递归调用
*
* 递归和循环的编写都包括三部分:
* 1. 初始值;
* 2. 终止条件;
* 3. 前进步长;
*
* 递归解决比较常见的问题:
* 累加加的和;
* 阶乘;
* 斐波那契数列等;
*
* 可能前面两个都会有过接触,没关系,我们把三个都写一遍
*
*/ // 累加加和 /*
* 计算1到100的和;
*/ /*
public class JavaSE{
public static void main(String[] args){
int s = sum(100);
System.out.println( s );
}
public static int sum(int a){//输出整形值100,进入判断语句,如果是1,就返回1,如果不是1,就返回:a + (a-1) + [(a-1)-1] + ...直到a - (a-1),也就是等于1的时候,返回1结束,结果相当于算的是100到1的和;
if (a==1) {
return 1;
}else{
return a + sum(a-1);//这里是调用了方法自身,让自身减一再进行判断,直到a==1为止结束
}
}
}
*/ /*
* 阶乘
* 计算10的阶乘(这里如果想换个别的数的话最好别换太大的数,否则会出现不可预估的结果,可能会超出int的内存空间,建议用12以下的数)
*/ /*
public class JavaSE{
public static void main(String[] args){
System.out.println( factorial(10) );
}
public static int factorial(int n){
if (n==1) {
return 1;
}else{
System.out.println( n + "x" + (n-1) + " " );
return n*factorial(n-1);
}
}
}
*/ /*
* 斐波那契数列
* 斐波那契数列第一位和第二位的数值都是1,之后的每一位都是前两位的和;
* 计算第5位斐波那契数列的数值;
*/ public class JavaSE{
public static void main(String[] args){
System.out.println( fibIteration() );
}
public static long fibIteration(int index) {
if (index == || index == ) {
return ;
} long f1 = 1l;
long f2 = 1l;
long f = ; for (int i = ; i < index-; i++) {
f = f1 + f2;
f1 = f2;
f2 = f;
System.out.print(f2 + "+" + f1 + ",");
}
return f;
}
}

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>杰我教育WWW.JAOVO.COM<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

JavaSE复习日记 : 递归函数的更多相关文章

  1. JavaSE复习日记 : 算是个小前言吧

    /* * Java也学了好久了,抽个时间整理了一下课堂笔记,也有些是我刚开始学会犯的一些错误.在这里浅谈一下JavaSE的基础内容,对我来说也是一种不错的复习方式. * * 那好,对于初学者来说,学习 ...

  2. JavaSE复习日记 : 方法的调用和方法的重载

    /* * 方法的调用和方法重载 */ /* * 什么是方法? * 方法就是一个有名字的代码段; * 方法的调用: * 在方法里调用另外一个方法里面的东西就是方法调用; * 或者可以认为"另外 ...

  3. JavaSE复习日记 : 循环终止语句(break/break outerFor/continue)

    最近没网,但攒了几天的博客,这次逮到机会发博客,直接三篇走起; /* * 循环终止语句: break/ break outerFor/ continue */ /* * break语句 * 1. 用于 ...

  4. JavaSE复习日记 : 接口

    /* * 接口 * 引用数据类型: * 类,接口,数组; * * 接口是一种引用数据类型,可以看作是一个特殊的类,它存在的目的是为了解决没有多重继承引起的功能弱的问题而设计的,一个类只能有一个父类,但 ...

  5. JavaSE复习日记 : 抽象类

    /* * 抽象类 * 抽象: * 面向对象的三大核心思想; * 封装: 封装,ppp是封装的一部分 * 继承; * 多态: 父类的引用指向子类的对象 * 引用: 是指一个引用型变量 * 有哪些变量? ...

  6. JavaSE复习日记 : 继承关系和super关键字以及继承关系中方法的覆写

    /* * 类的继承和super关键字 * * 软件开发的三大目的: * 可拓展性; * 可维护性; * 可重用性; * * 这里单说下可重用性这一项: * 为了代码复用,复用方式有: * 函数的调用复 ...

  7. JavaSE复习日记 : java包机制

    这里是第一个文件,命名为JavaSE_01.java,我在这个文件里面声明了一个m1()方法,通过包机制,我将在另外一个文件夹里访问这个文件里的东西,确切的说是访问这个文件生成的一个class文件; ...

  8. JavaSE复习日记 : 实例化对象/构造方法和this关键字

    /* * 实例化对象/对象的构造方法/this关键字 */ /* * 实例化对象 * * 就是实例化某一个类; * 从不同角度去理解的话就是: * 1. 从人的认知角度: * 就是具体化某个东西; * ...

  9. JavaSE复习日记 : 循环语句(for/while/do while)

    /* * 循环语句(for循环,while和do while循环) */ /* * for循环语句 * * for循环语法: * for (表达式1;表达式2;表达式3 ){ * java语句 * } ...

随机推荐

  1. js正则验证两位小数 验证数字最简单正则表达式大全

    <h3>输入完按回车后即可验证!(自认为最简单!)</h3> 正整数:    <input type="text" size="20&quo ...

  2. 浅谈hadoop中mapreduce的文件分发

    近期在做数据分析的时候.须要在mapreduce中调用c语言写的接口.此时就须要把动态链接库so文件分发到hadoop的各个节点上,原来想自己来做这个分发,大概过程就是把so文件放在hdfs上面,然后 ...

  3. oracle10G之前介质下载地址【珍藏版】

    今天在互联网搜了一下相关介质下载,自己记录一下. Oracle9i Database Release 2 Enterprise/Standard/Personal Edition for Window ...

  4. Ant 简易教程

    转载:http://www.cnblogs.com/jingmoxukong/p/4433945.html Ant 简易教程 Apache Ant,是一个将软件编译.测试.部署等步骤联系在一起加以自动 ...

  5. VMware vSphere Client为虚拟机制定物理网卡(图文并茂)

    1.首先,查看我的服务器有几张网卡,如下图共3张,接下来我将为虚拟主机制定一张网卡,以及为当中的两台虚拟的CentOS7各制定一张网卡. 2.打开“硬件”---->“网络”,如图,已经启用一张网 ...

  6. iOS 任意类型数据转换字符串

    //转换数据类型: NSError *parseError = nil; NSData *jsonData = [NSJSONSerialization dataWithJSONObject:resp ...

  7. @property和@synthesize

    main.m #import <Foundation/Foundation.h> #import "Student.h" int main(int argc, cons ...

  8. 02151216--Ajax

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. C语言处理CSV文件的方法(二)

    strtok函数的使用是一个老生常谈的问题了.该函数的作用很大,争议也很大.以下的表述可能与一些资料有区别或者说与你原来的认识有差异,因此,我尽量以实验为证.交代一下实验环境是必要的,win7+vc6 ...

  10. textarea 输入框限制字数

    在textarea标签中,只需要设置maxlength=”***”即可,但是在textarea标签中,IE9及IE9以下浏览器是不支持的,IE10.IE11则支持,估计后续的版本应该都会支持. 现在来 ...