方法就是完成功能一个语句集合体
使用方法的原则:方法的原子性,一个方法只实现一个功能。
方法的重载
1.函数名必须相同
2.形参列表必须不同(可以是个数不同,类型不同,不然完全一样)
3.返回值可以相同也可以不相同
public void add(int a,int b){
return a+b;
}
public void add(double a,double b){
return a+b;
}
public void add(double a,double b,double c){
return a+b+c;
}
命令行传参
通过命令行可以将参数传到String args[],可以进行一些操作
然后使用javac编译
javac Hello.java
java Hello 参数 例如 java Hello this is dog
可变长参数
情景:比如说一个计算n数和的方法,你不知道到底会有多少个数字,如果用方法重载的话,需要写无数个方法,会很麻烦。所以,这里就用到了可变长参数。
注意:可变长参数的本质是数组
public class VariableArgs {
public static void main(String[] args) {
int sums = 0;
sums = add(1,2,3,4,2,3);//想写多少参数,就写多少。
System.out.println(sums);
}
public static int add(int... nums){//这样就可以不必重载大量的add方法。
int sum = 0;
for(int i:nums){
sum += i;
}
return sum;
}
}
1.一个方法的内部,这能有一个可变参数。
2.并且可变参数只能放在形参列表的最后面一个位置。
递归是什么?
理解:自己调用自己。
组成:1.递归头 什么时候不调用自己的方法了
2.递归体 什么时候还需要调用自己的时候。
思想:以一个不断压栈的过程,main方法在最底层,每递归一次,递归方法就压入栈,直到到达了递归头,然后再一个个出栈。