递归

官方解释:是指函数/过程/子程序在运行过程序中直接或间接调用自身而产生的重入现象.

递归:方法直接或者间接的调用自己本身则称为递归.

也可以简单的说递归就是方法自己调用自己.

递归实现的代码如下:

public static void main(String[] args) {//递归  找钥匙  递归这个数组String[] box={"飞机","大炮","火箭","钥匙","张三丰"};openBox(box,5);}//定义一个打开盒子的方法,参数分别是一个盒子和盒子的长度public static void openBox(String[] box,int deep){//如果盒子的深度大于5的时候停止递归,如果不给它这个条件的话它会一直递归下去,最终会导致占内存溢出if (deep>5){//如果没有这个条件,则会报栈内存异常,可以自己试一下return;//结束方法}for (int i = 0; i <box.length ; i++) {//如果盒子里面是钥匙的话就拿出来if(box[i].equals("钥匙")){终止条件System.out.println(box[i]);}else{//递归条件deep++;//没循环一次深度加1openBox(box,deep);//继续递归遍历}}}

用java实现简单递归相关推荐

  1. java中的递归函数调用函数_Java中函数的递归调用

    说到递归,java中的递归和C语言中也是很相似的,在Java中,递归其实就是利用了栈的先进后出的机制来描述的. public class HelloWorld { public static void ...

  2. java 7.函数-递归_带有谓词的Java中的函数样式-第1部分

    java 7.函数-递归 您一直在听到将要席卷全球的函数式编程,而您仍然坚持使用普通Java? 不用担心,因为您已经可以在日常Java中添加一些功能样式. 此外,它很有趣,可以节省许多代码行并减少错误 ...

  3. java 7.函数-递归_带有谓词的Java中的函数样式-第2部分

    java 7.函数-递归 在本文的第一部分中,我们介绍了谓词,这些谓词通过具有返回true或false的单一方法的简单接口,为Java等面向对象的语言带来了函数式编程的某些好处. 在第二部分和最后一部 ...

  4. Java制作简单小画板

    Java制作简单画板,包括两个类,一个主要画板类Drawpad,一个画板监听器DrawListener类. 1.Drawpad类,包括画板,画板功能设计,保存图片等 package Java课程设计; ...

  5. java实现简单的家庭收支记账程序

    java实现简单的家庭收支记账程序 文章目录 java实现简单的家庭收支记账程序 前言 一.需求分析 1.要求 2.不同模块功能 3.需定义的变量(仅供参考) 4.一些优化建议 二.工具类 概念 本项 ...

  6. Java选择题简单的考试系统

    Java选择题简单的考试系统 做前声明: 此系统包括了Java中:面向对象-封装.String-StringBuilder.ArrayList集合.继承-抽象-final.static-接口-多态.四 ...

  7. Java基础简单题目练习

    一.回文数判断 1.通过获取所输入整数的各个位数上的值来判断是否为回文数. a.代码如下: import java.util.Scanner; public class Test { public s ...

  8. 用Java实现简单扫雷程序

    用Java实现简单扫雷程序 页面设置:框架是borderlayout,在上中下加入外面要加入的组件(左边和右边不加).扫雷用的布局是gridlayout即网格布局,与扫雷界面天然契合. 组件:使用pa ...

  9. java简单通讯录的实现02person类_用java实现简单的小游戏(你一定玩过)

    用java实现简单的小游戏(你一定玩过) 对于java初学者来说,通过一些学习小游戏来对swing学习以及对java基础的学习是一个好的方法,同时也给学习带来了很多的乐趣,接下来就给大家分享一个jav ...

最新文章

  1. Android事件流程详解
  2. 《架构漫谈》阅读笔记
  3. java中frame窗体星星坠落_java窗体绘漫天星星和月亮
  4. 【HBase从入门到精通系列】误删数据如何抢救?
  5. WIN10自带远程桌面实现多用户登录
  6. php swoole udp,基于Swoole如何搭建UDP服务?
  7. Log4j的简单配置使用
  8. 软件交互性友好性_您应该知道的8个环境友好的开放软件项目
  9. 安卓mysql插入数据_Android批量插入数据到SQLite数据库的方法
  10. 1、Keepalived及VRRP原理介绍
  11. 运用li元素进行斑马色显示
  12. 机器学习算法基础6-模型保存与加载、逻辑回归、Kmeans(聚类)
  13. Linux网络编程 --------- Socket编程---最浅显易懂的介绍
  14. 国军标要求的产品“六性”到底是什么?
  15. 普元EOS之我要使用多数据源
  16. northwind数据库介绍
  17. Mac下载安装vscode
  18. 步步高彭雄:弄潮“互联网+零售”从端到端流程开始
  19. 文件服务器隐藏netlogon,lanmanworkstation-netlogon服务无法自启,该如何处理?各位大侠好,此台服务器 爱问知识人...
  20. 九轴传感器姿态----AHRS算法开源项目推荐

热门文章

  1. 儿童智能手表行业未老先衰:5亿家长被伪智能忽悠
  2. 特斯拉上海工厂整体工程建设基本完成 将于年底投产
  3. “这是用什么写的?”
  4. 如何评估小红书投放效果?有哪些数据可以帮助监测效果
  5. ctfshow RCE极限挑战
  6. sap 采购订单 bapi (创建外协采购订单-组件为手工输入)
  7. 逆向工程实验Pre5
  8. Oracle EBS NETSUITE,OracleCloud、NetSuite对比研究
  9. CentOS修改hostname的三种方法示例
  10. 供应链|多期库存系统中具有销售损失的最优联合补货和转运策略