递归

就是方法定义本身调用方法本身的现象叫做递归
注意了!!注意了!!!

StringBuffer.append().append().append(),这个不叫作递归,这个叫做方法的连续使用
Math.max(Math.max(a,b),c),这个也不叫做递归,这玩意叫方法的嵌套使用

举例:

大家伙小时都应该都听过这个故事吧:
从前有座山,山上有座庙,庙里有个老和尚和小和尚说
从前有座山,山上有座庙,庙里有个老和尚和小和尚说
从前有座山,山上有座庙,庙里有个老和尚和小和尚说

那这个故事什么时候会截至呢,就是老和尚圆寂了,小和尚还俗了,故事也就到此为止了,故事停止的条件可以理解成递归的结束条件,也就是递归的出口。

递归的注意事项

1、递归一定要有一个出口,结束条件,否则!!!!就会变成死循环
2、递归的次数不能太多,不然就会发生内存溢出异常
3、构造方法不能使用递归

public class FileDemo {public static void show(int i) {//第一步,定义一个结束的条件!!!!if ((i<0)) {System.out.println("循环结束");}else {System.out.println(i);show(--i);}}public static void main(String[] args) {show(120);}
}

运行效果截图

递归-----从前有座山,山里有座庙,庙里有个老和尚和小和尚说.....相关推荐

  1. 百钱百鸡和从前有座山,山里有座庙

    通过百钱百鸡和和尚馒头问题掌握for-while package arithmetic; /*** 相关算法案例* 1.百钱百鸡问题* 2.和尚和馒头问题** @author sunRainAmazi ...

  2. 从前有座山,山里有座庙

    来自知乎:https://www.zhihu.com/question/36242099 著作权归作者所有. 商业转载请联系作者获得授权,非商业转载请注明出处. 作者:兔尾巴老李 链接:https:/ ...

  3. 从前有座山,山里有座庙:递归之法

    递归描述 递归调用是函数内部调用自身的过程,递归必须要有结束条件,否则会进入无限递归状态.无法停止. 我们称这个条件为(递归基) 递归原理 递归包括(递推)和(回归),递推是指将原问题不断分解为子问题 ...

  4. 从前,有座山,山里有座庙,庙里有苦逼IT

    一个和尚挑水吃.两个和尚抬水吃.三个和尚没水吃. 总寺的方丈大人得知情况后,就派来了一名主持和一名书记,共同负责解决这一问题.主持上任后,发现问题的关键是管理不到位,于是就招聘一些和尚成立了寺庙管理部 ...

  5. 算法图解-终极版-递归-从前有座山

    递归 到底递归是如何执行的, 首先递归用到的是有限的存储空间, 在ram上存储, 另外, 递归,是对内存空间的重读使用, 图解只是为了方面理解, 但递归是有数量限制的, 不能像迭代那样, 可以无限多的 ...

  6. 玩转 Jasper Report(1) Jaspersoft Studio 安装使用教程

    文章目录 1 摘要 2 Jaspersoft Studio 下载安装 3 导出PDF的完整示例 4 当前示例的 jasper 源码 5 推荐参考资料 1 摘要 Jasper Report 作为一个老牌 ...

  7. Java中的异常和递归

    (一)HashMap (1)HashMap集合本身基于哈希表 它可以保证键的唯一性(Map都是针对键有效) HashMap<String,String> String:人的ID编号 Str ...

  8. JavaSE 第三章 流程控制语句方法定义 笔记

    文章目录 3.1 语句 3.2 顺序结构 3.3 输入输出语句 3.3.1 常见的输出语句 3.3.2 输入语句 3.4 分支语句 3.4.1单分支条件判断:if 3.4.2 双分支条件判断:if.. ...

  9. C语言函数之递归调用

    提示:本文主要是掌握函数的递归 函数递归 前言 什么是递归 递归的两个必要条件 递归与迭代的关系 递归函数的优缺点 什么时候使用递归 总结 前言 函数是学习C语言的最重要知识点之一,要学好这门编程语言 ...

最新文章

  1. VisualStudio代码样式-我最喜欢的一种风格
  2. Glib 对 C 函数进行单元测试
  3. HBase之BloomFilter
  4. keepalived 原理,安装,配置
  5. java reader_Java Reader reset()方法与示例
  6. [转]把人当成一个公司来经营,心就不会那么累
  7. EOS Nation更新“flash.sx遭攻击”进展:将建议MSIG根据快照将资金退还
  8. cdh官方文档看后小结(含优化项)001
  9. 自由之战服务器显示登录失败,自由之战:生存的游戏一直登入不进去怎么办
  10. 20160319中艺收盘总结
  11. 调试时遇到 调试源程序时Loaderlock 的解决办法
  12. 使用QueenSono从ICMP提取数据
  13. python数据分析的概念_Python数据分析入门篇
  14. linux系统安装firefox的flash player插件
  15. HTTPs SSL OV、DV和EV证书的区别
  16. 80C51单片机:2.初学点亮发光二极管,流水灯案例
  17. 考研英语常见重要单词
  18. 计算机免费取名,电脑免费婴儿取名
  19. winscp开启ftp_Linux 之WinSCP连接FTP
  20. 阿里、京东、字节跳动春招,Java岗offer不好拿?一文带你搞定

热门文章

  1. Windows XP远程桌面连接
  2. Jsp页面跳转和js控制页面跳转的几种方法
  3. MacOS Terminal 常用快捷键大全
  4. 喵喵喵?喵嘞个咪?---- C++左值引用
  5. Word,PDF,PPT,TXT之间的转换方法 2010-11-27 05:13
  6. 【STK】STK11.6下载安装+MATLAB互连+各插件模块(不用再找了,这里能解决)
  7. Linux如何管理并挂载硬盘设备
  8. 【论文笔记】Adaptive Reinforcement Learning Neural Network Control for Uncertain Nonlinear System
  9. Eclipse调整XML源代码文件字体大小
  10. 眼动追踪-NeuroIS-基础知识总结