方法的定义与使用(方法递归调用)|学习笔记

简介: 快速学习 方法的定义与使用(方法递归调用)

开发者学堂课程【【名师课堂】Java 零基础入门:方法的定义与使用(方法递归调用)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/370/detail/4421


方法的定义与使用(方法递归调用)


内容简介:

一、方法递归调用的定义

二、范例1:实现一个 1-100 的累加操作

三、范例2:实现60!

 

一、方法递归调用的定义

方法的递归调用指的是一个方法自己调用自己的形式。一般如果要进行方法的递归操作往往都具备有以下特点:

l 方法必须有一个递归的结束条件

l 方法在每次递归处理的时候一定要做出一些变更

 

二、范例1:实现一个1-100的累加操作

public class TestDemo {

public static void main(String args[]) {

System.out.printIn(sum(100));

}

public static int sum(int sum) {

if(num==1) {   //结束条件

return 1;

}

return num + sum(num-1);  //做出变更

}

}

代码解读如下:

【mian() 调用】第 1 次执行 sum() 方法:return 100+sum(100-1)

【sum() 递归】第 2 次执行 sum() 方法:return 99+sum(99-1)

【sum() 递归】第 2 次执行 sum() 方法:return 98+sum(98-1)

【sum() 调用】倒数第 2 次执行 sum() 方法:return 2+sum(2-1)

【sum() 调用】倒数第 1 次执行 sum() 方法:return 1;

图片4.png


三、范例 2:实现 60!

可以预见该算式输出结果较大,应该使用 double

public class TestDemo {

public static void main(String args[]) {

System.out.printIn(mul (60));

}

public static int sum(int sum) {

if(num==1) {   //结束条件

return 1;

}

return num * mul (num-1);  //做出变更

}

}

通过代码可以发现使用 while 循环的操作其实大部分都可以更换为递归,之所以使用递归主要是一个方法可以执行的操作很多而且结构要好。

相关文章
|
6月前
|
机器学习/深度学习 存储 Java
分支结构 && 方法的创建和调用 && 方法递归 && 数组的创建和使用 && 类和对象的认识 && 内部类 && 认识继承
分支结构 && 方法的创建和调用 && 方法递归 && 数组的创建和使用 && 类和对象的认识 && 内部类 && 认识继承
41 0
|
3月前
|
算法 编译器 C语言
C learning_10 (函数的嵌套调用和链式访问、函数的声明和定义、函数递归)
C learning_10 (函数的嵌套调用和链式访问、函数的声明和定义、函数递归)
|
3天前
|
算法 Python
函数的递归调用与嵌套调用详解
函数的递归调用与嵌套调用详解
9 0
|
存储 Java
Java面向对象(3.1)--方法的重载,可变个数的形参,值传递机制,递归
Java面向对象(3.1)--方法的重载,可变个数的形参,值传递机制,递归
92 0
Java练习——方法案例(较大数、带参数、带返回值、方法重载、数组遍历、)需求、分析、代码
Java练习——方法案例(较大数、带参数、带返回值、方法重载、数组遍历、)需求、分析、代码!
复习C部分:1.写一个函数,实现整形有序数组二分查找 2.写一个函数,每调用一次这个函数,就会将num的值增加1 3.函数的嵌套调用和链式访问 4. 函数递归----自己调用自己
复习C部分:1.写一个函数,实现整形有序数组二分查找 2.写一个函数,每调用一次这个函数,就会将num的值增加1 3.函数的嵌套调用和链式访问 4. 函数递归----自己调用自己
57 0
复习C部分:1.写一个函数,实现整形有序数组二分查找 2.写一个函数,每调用一次这个函数,就会将num的值增加1 3.函数的嵌套调用和链式访问 4. 函数递归----自己调用自己
java基础学习 数组,循环,变量,函数加载情况先后顺序,方法定义
java基础学习 数组,循环,变量,函数加载情况先后顺序,方法定义
java基础学习 数组,循环,变量,函数加载情况先后顺序,方法定义
|
Java 开发者
方法的递归调用 | 学习笔记
快速学习方法的递归调用
171 0
方法的递归调用 | 学习笔记