java3

方法
类比是一种带有某种功能(实现某种逻辑)的工具

  1. 方法的声明

方法名:建议小写字母开头,如果有多个单词其余单词首字母大写
驼峰原则: studentManager001
参数列表:多个参数之间使用”,“分隔
返回值: 必须与设定的返回值类型”一致“
如果方法不需要返回任何数据,设置void不需写return

访问权限修饰符 [限定修饰符] 返回值类型 方法名(参数列表){

return 返回值
}

public static int add(int a, int b){
int c = a + b;
return c;
}

  1. 方法的调用
    通过 ”方法名(提供参数)“调用方法执行方法的逻辑
    如果方法有返回值,需要利用一个同类型的变量进行接收
    如果方法没有返回值,不需变量接收,直接调用即可

  2. 方法的参数(形式参数和实际参数)
    形式参数:形参,声明方法时,参数列表中的变量
    实际参数:实参,调用方法时,提供给方法的实际数据

  3. 方法的重载(重要)

将一个同名的方法,定义多次。
要求方法名一致,但参数列表必须不一致。
(1)参数的个数不同
(2)参数的类型不同
(3)参数的类型顺序不同

重载与返回值类型无关

重载还有其他名字: overload, 编译时多态。

  1. 方法调用的值传递(非常重要)
    每调用一次方法,在栈中新建一个”栈帧“入栈
    当一个方法执行完毕后,从栈中出栈
    正在的执行的方法一定是在栈顶

  2. 方法的递归

一个方法调用自身

思路:将一个复杂问题拆解成多个步骤相似的小问题

5!= 54321
5! = 5*4!

条件1: 推导公式(递归的前进公式)
n! = n*(n-1)! //递归的前进公式
func(n) = n * func(n-1)

条件2:递归的边界
1! = 1
func(1) = 1

练习:第1个人他有2支笔
第2个人是第1个人2倍多1个
第3个人是第2个人2倍多1个
第6个人有多少支笔

f(1) = 2
f(2) = 2f(1) + 1
f(3) = 2
f(2) + 1

f(n) = 2*f(n-1) + 1

斐波拉契数列: 1, 1, 2, 3, 5, 8, 13…
f(n) = f(n-2) + f(n-1)
f(1) = 1
f(2) = 1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值