方法
- 方法的本意是功能块,就是实现某个功能的语句块的集合
- 驼峰命名法
- 给方法加上static,本类就可直接调用,其他类要调用要new 本类
//方法的定义
修饰符 返回值类型 方法名(参数1,参数2...){
...
方法体
...
return 返回值;
}
//方法调用
//方法名(参数1,参数2...);
- 形参 用来定义 public static void add ( int a,int b) { }
- 实参 实际传递 add(1,2);
- 扩展 return 0; //终止方法
方法重载
方法名称相同
参数列表不同(个数不同,或类型不同,或参数排列顺序不同)
可变参数
public class Test3 {
public static void main(String[] args) {
//在方法声明中,在指定参数类型后加一个省略号(...)
//一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明
Test3 t = new Test3();
t.test(1,2,3,4,5);//可以传5个参数
t.test(11,22,33); //可以传3个参数
}
public void test(int... i){
System.out.println(i[0]);//1 11
System.out.println(i[1]);//2 22
System.out.println(i[2]);//3 33
}
}
递归
- 递归就是自己调用自己
递归结构包括两个部分
- 递归头:什么时候不调用自身方法。如果没有头,将陷入死循环。
- 递归体:什么时候需要调用自身方法。
阶乘代码如下
public class Test3 {
public static void main(String[] args) {
//2! 2*1
//5! 5*4*3*2*1
System.out.println(f(4));//4*3*2*1=24
}
public static int f(int n){
if(n==1){
return 1;
}else{
return n*f(n-1);
}
}
}