04-函数,递归
1.函数的概念
- 实现特定功能的一段代码,可以反复使用。
- 函数的设计:遵循单一职能原则,一个函数只做一件事。
2.函数的定义
public static void 函数名称 () {
// 函数主体
}
- 一个类中可以定义多个函数,函数之间是并列关系,不可嵌套。
3.函数的调用
函数名();
4.函数的参数
调用函数时,所传入的数据被称为”参数”。
定义语法:
public static void 函数名称 (函数形参) { // 形参 等价于 局部变量的声明
// 函数主体
}
调用语法:
函数名(实际参数); // 实参 等价于 局部变量的赋值操作
如何定义参数?经验:根据具体的业务需求,来定义函数的参数。
【注意】字符串比较的问题:
== 默认比较的地址值,不是字符串内容
str1.equals(str2); 含义:比较s1中存储的字符串是否与s2相同, true相同
!str1.equals(str2); 含义:比较s1中存储的字符串是否与s2不同, true不同
5.函数的返回值
- 返回值类型
1)定义返回值类型:基本数据类型、引用数据类型、void
2)return value; // 函数可以返回一个结果,类型必须与函数定义的返回值一致
3)一个函数只能有一个返回值,如果函数中包含分支条件,需要保证所有的分支都有返回值
4)return 的两种用法:
A) return value; // 表示结束当前函数,并伴有返回值,返回到函数的调用处
B) return; // 表示结束当前函数,直接会返回到函数调用处
6.多级调用
递归,何时使用?
当需要解决的问题可以拆分为若干个小问题,大小问题的解决方法相同。
有固定规律,函数中自己调用自己。
设置有效的退出条件,避免无穷递归。
1 |
|
- 斐波那契数列
1 |
|
- 递归根据需要可能会有多个退出条件
1 |
|
04-函数,递归
https://janycode.github.io/2016/04/28/02_编程语言/01_Java/01_JavaSE/01_基础语法/04-函数,递归/