递归就是在A方法中调用A方法,自己调用自己

利用递归可以用简单的程序来解决一些复杂的问题。它通常把一个大型的复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。

递归结构包括两个部分:
递归头:什么时候不调用自身方法。如果没有头,将陷入死循环。
递归体:什么时候需要调用自身方法。

下面用计算阶乘的方法来演示:

 public static void main(String[] args) {int f=f(5);System.out.println(f);}//阶乘public static int f(int n ){if(n==1){return 1;//递归头,在n=1时结束调用自身方法。}else {return n*f(n-1);//递归体,在n>1时调用自身方法。}}

结果:

(JAVA学习笔记) 关于方法的递归-阶乘方法演示相关推荐

  1. Java学习笔记---多线程同步的五种方法

    一.引言 前几天面试,被大师虐残了,好多基础知识必须得重新拿起来啊.闲话不多说,进入正题. 二.为什么要线程同步 因为当我们有多个线程要同时访问一个变量或对象时,如果这些线程中既有读又有写操作时,就会 ...

  2. Java学习笔记13(equals()方法;toString()方法)

    equals()方法: equals方法是Object类中的方法:Object是所有类的祖宗,所以所有类都有equals()方法: boolean equals(Object obj); equals ...

  3. 2022年Java学习笔记目录

    一.2022年Java任务驱动课程 任务驱动,统摄知识点:2022年Java程序设计讲课笔记 二.2022年Java学习笔记 (一)踏上Java开发之旅 Java学习笔记1.1.1 搭建Java开发环 ...

  4. java学习笔记5--类的方法

    接着前面的学习: java学习笔记4--类与对象的基本概念(2) java学习笔记3--类与对象的基本概念(1) java学习笔记2--数据类型.数组 java学习笔记1--开发环境平台总结 本文地址 ...

  5. 【学习笔记】求解简单递归式的一般方法

    [学习笔记]求解简单递归式的一般方法 手动博客搬家: 本文发表于20180618 15:53:06, 原地址https://blog.csdn.net/suncongbo/article/detail ...

  6. Java学习笔记:创建线程的两种方法

    Java学习笔记:创建线程的两种方法 一.预备工作 1.创建Maven项目ThreadDemo 2.在pom.xml里添加依赖 二.继承Thread类创建子线程

  7. JAVA学习笔记五---函数

    JAVA学习笔记五---函数 5.1 方法的学习 编写一个程序,求圆的周长和面积. package practice; /*** 编写一个程序,求圆的周长和面积.* @author iszhangyo ...

  8. 郑志远的java学习笔记

    郑志远的java学习笔记 郑志远    CCB 1         Java起源 略 2         Java语言概述 1.面向对象编程的3个原则:封装(encapsulation).继承(inh ...

  9. java学习笔记---5

    IO流 I〇流概述: lO:输入/输出(Input/Output) 流:是一种抽象概念,是对数据传输的总称.也就是说数据在设备间的传输称为流,流的本质是数据传输IO流就是用来处理设备间数据传输问题的: ...

最新文章

  1. JAVA设计模式(09):结构型-代理模式(Proxy)
  2. 23种设计模式之享元模式
  3. MySQL的用户密码过期功能详解
  4. Linux shell初识及权限理解
  5. Linux服务器沦陷为肉鸡的全过程实录
  6. 清华大学计算机系本科课程,清华大学计算机系本科生全部课程详细介绍
  7. MATLAB实现对比度计算
  8. 如何获取计算机网络地址,如何查看电脑获取到的IP地址?
  9. CEPH告警:health_warn 45 pgs degraded;60 pgs unclean; 45 pgs undersized
  10. 仿照源码,手写一个自定义 Spring MVC 框架
  11. python16——时间记录器
  12. 青龙面板搭建及记录踩过的坑
  13. deepin升级到20.2,开机显示deepin LOGO之后屏幕黑屏解决办法
  14. sapjco3使用详解
  15. java生成word几种解决方案
  16. 日期选择器 当前日期之前不允许选择
  17. 【网站模板】第02期—15款免费企业网站模板,助你提升学习效率与工作效率
  18. 数据库系统设计与原理
  19. mysql设置了远程连接查不到视图_mysql服务设置远程连接 解决1251 client does not support ..问题...
  20. 华为数通HCIE面试看这个就够了系列——MPLS V*N

热门文章

  1. Docker (2)与虚拟机的比较
  2. Cache与主存的三种映射
  3. 【Python小程序】必备软件系列之文字识别提取,前台再也不同担心纸质转电子文件啦~
  4. python—多线程之数据混乱问题
  5. [mmu/cache]-cache在linux和optee中的应用-InProgress
  6. 密码学基础知识(三)古典密码
  7. java 加减运算_JAVA日期加减运算 | 学步园
  8. 题目2:隐式图的搜索问题(A*算法解决八数码)代码实现
  9. 硬件安全系列 逻辑电路基础知识介绍(二)
  10. 【PHP】 php7.0 扩展列表