Java方法 01 - 06


Java方法 01 - 06

Java方法01 - 什么是方法

1
2
3
4
5
6
7
8
9
10
11
12
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 - 方法的定义和调用

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

Java方法03 - 方法的重载

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

  • 重载规则

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

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

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

1
2
3
4
5
6
7
8
9
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 - 可变参数

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

例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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
1
2
3
4
5

Java方法06 - 递归讲解

阶乘

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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