Day5 - 函数(overlord、递归)

什么是函数?

函数就是定义在类中具有特定功能的一段独立小程序。
函数也称为方法。

返回值类型

函数运算后结果的数据类型。

参数类型
  • 形式参数:是一个变量,用于存储调用函数时传递给函数的实际参数。
  • 实际参数:传递给形式参数的具体数值。
return

用于结束函数。

返回值

该值会返回给调用者。

函数格式
修饰符 返回值类型 函数名(参数类型  形式参数1,参数类型  形式参数,...)
{
执行语句;
return 返回值;
}
定义函数的优点:
  • 可以将功能代码进行封装;
  • 便于该功能进行复写;
  • 只有被调用才会被执行;
  • 提高了代码的复用性;
注意:
  • 对于函数没有具体返回值的情况,返回值类型用关键字void表示,此时return语句不必再写。
  • 函数中只能调用函数,不可能在函数内部定义函数;
  • 定义函数时,函数结果应该返回调用者,由调用者处理。

重载(overlord)

在同一个类中,允许存在一个以上的同名函数,只要它们的参数个数或者参数类型不同即可。

判断函数重载只看参数列表,跟返回值无关
  • 个数是否一样;
  • 参数类型;
  • 参数顺序;
    重载优点:方便阅读,优化了程序设计
代码示例
public static int add(int a , int b){
return  ...;
}
public static int add(int a, int b, int c){
return ...;
}

递归

自己调用自己。递归要有边界,没有边界就会出现异常。例子:汉诺塔

代码示例:上台阶步数
class Demo{
public static void main(String[] args){
sop(floor(1));
sop(floor(2));
sop(floor(3));
sop(floor(4));
sop(floor(5));
sop(floor(6));
sop(floor(7));
sop(floor(30));
}
public static int floor (int n){
if(n>1){
return floor(n-1)+floor(n-2);
}else{
return 1;
}
}
public static void sop(Object obj){
System.out.println(obj);
}
}

你可能感兴趣的:(Day5 - 函数(overlord、递归))