Java方法 01 - 06


Java方法 01 - 06

Java方法01 - 什么是方法

package method;

public class Demo01 {
    public static void main(String[] args) {
        int a = add(1,2);
        System.out.println(a);
    }
    // 加法
    static public int add(int a, int b){
        return a+b;
    }
}

Java方法02 - 方法的定义和调用

修饰符 返回值类型 方法名(参数类型 参数名){
    //方法体
    return 返回值;
}
  • 修饰符
    • public
    • static
    • final
  • 返回值类型
    • void
    • int
  • 方法名
  • 参数类型
    • 形参
    • 实参
  • 方法体

Java方法03 - 方法的重载

  • 在一个类中,有相同的函数名称,但是形参不同的函数

  • 重载规则

    • 方法名必须相同
    • 参数列表必须不同(可以是参数个数不同,顺序不同,类型不同)
    • 方法返回值可以相同或者不同
    • 只是返回值不同并不是方法重载
  • 实现理论

    • 方法名称相同时,编译器会根据调用方法的参数去匹配,如果匹配失败则报错

Java方法04 - 命令行传递参数

package method;

public class Demo02 {
    public static void main(String[] args) {
        for(int i=0;i<args.length;i++){
            System.out.println("args["+i+"]"+args[i]);
        }
    }
}

image-20221102163556770

必须在src文件夹下才能执行

在src目录下,输入正确的path来执行文件

参数可以直接跟在后面

Java方法05 - 可变参数

  • 在方法声明中,在指定参数类型后加一个省略号(…)
  • 一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明。

例子

package method;

public class Demo03 {
    public static void main(String[] args) {
        Demo03 demo03 = new Demo03();
        demo03.test(1,2,3,4,5);
    }
    public void test(int... i){
        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]);
    }
}
1
2
3
4
5

Java方法06 - 递归讲解

阶乘

package method;

public class Demo04 {
    public static void main(String[] args) {
        int x = f(4);
        System.out.println(x);
    }

    public static int f(int n){
        if (n==0){
            return 1;
        }
        else{
            return f(n-1)*n;
        }
    }
}

Author: Liang Junyi
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint policy. If reproduced, please indicate source Liang Junyi !
  TOC