递归方法
在一个方法体内,调用自身,一般要有出口。
实例:
已知一个数列,f(0)=1,f(1)=4,f(n+2)=2*f(n+1)+f(n),其中n为大于等于0的整数,求f(10)的值。
package my_package; public class Test { public static void main(String[] args) { System.out.println( myFunction(10)); } public static int myFunction(int num){ if(num==0) return 1; else if (num==1) return 4; else return myFunction(num-1)*2+myFunction(num-2); } }
方法重载
方法重载要求:
同一个类中,方法名相同,形参表不同(数据类型、参数个数)。
与返回值类型、修饰符无关。
参数个数可变的方法
public void out(String username,String... arg){ }
定义方法时,放在形参表的最后面,参数类型后面加3个点。
调用时该位置可传入0-n个参数(要求数据类型都为声明的类型,比如demo中的String),就是说该位置不传参数也行。实质是以数组形式传入。
java中只有一种传参方式:传值。实参的值不会受到形参的影响。