- 方法定义及调用方法重载可变参数递归
方法是语句的集合,在一起执行功能(c函数)
public class methodDemo01 {
public static void main(String[] args) { // main方法(main函数)
int sum = add (1,2);
System.out.println(sum);
}
public static int add (int a ,int b){ // 加static才是类,才能引用
return a+b;
}
}
尽量一个方法实现一个功能
main方法尽量保持干净简洁
方法重载
重载就是在一个类中有相同函数名称但形参不同的函数!
public class methodDemo01 {
public static void main(String[] args) { // main方法(main函数)
double max = max (10.6,20.3) ; // 括号内是double类型 则执行第二种max
System.out.println(max);
int max2 = max(20,6); //int类型执行第一个max
System.out.println(max2);
}
public static int max (int num1 ,int num2){
int result = 0;
if (num1 == num2){
System.out.println("num1 = num2");
return 0; //终止方法
}
if(num1 > num2) result = num1;
else result = num2;
return result;
}
public static double max (double num1 ,double num2){
double result = 0;
if (num1 == num2){
System.out.println("num1 = num2");
return 0; //终止方法
}
if(num1 > num2) result = num1;
else result = num2;
return result;
}
}
可变参数(不定项参数)
在方法声明中,在指定参数类型后加一个省略号一个方法只能指定一个可变参数,并且它必须是方法的最后一个参数,任何普通参数都必须在他之前声明
public class methodDemo02 {
public static void main(String[] args) {
methodDemo02 demo02 = new methodDemo02();
demo02.test(1,2,3,5,3,2,5);
}
public void test(int ... i){// 如果定义为public void test(int ... i,int x)则违反第二条规则
System.out.println(i[0]);
System.out.println(i[1]);
System.out.println(i[2]);
System.out.println(i[3]);
System.out.println(i[4]);
System.out.println(i[5]);
System.out.println(i[6]);
}
}
递归
方法自己调用自己
递归包含
1.递归头:什么时候不调用自身方法,如果没有头将会陷入死循环
2.递归体:什么时候调用自身方法
阶乘



