目录

JAVA 方法参数


参数和实参

信息可以作为参数传递给方法。参数在方法内充当变量。

参数在方法名称后面的括号内指定。您可以添加任意多个参数,只需用逗号分隔即可。

以下示例有一个方法,该方法采用String被称为文件名作为参数。调用该方法时,我们传递一个名字,该名字在方法内部用于打印全名:

示例

public class Main {
  static void myMethod(String fname) {
    System.out.println(fname + " Refsnes");
  }

  public static void main(String[] args) {
    myMethod("Liam");
    myMethod("Jenny");
    myMethod("Anja");
  }
}
// Liam Refsnes
// Jenny Refsnes
// Anja Refsnes

亲自试一试 »

当一个参数被传递给该方法,它被称为实参。所以,从上面的例子来看:fname是一个参数, 尽管Liam,JennyAnja实参


多个参数

您可以拥有任意多个参数:

示例

public class Main {
  static void myMethod(String fname, int age) {
    System.out.println(fname + " is " + age);
  }

  public static void main(String[] args) {
    myMethod("Liam", 5);
    myMethod("Jenny", 8);
    myMethod("Anja", 31);
  }
}

// Liam is 5
// Jenny is 8
// Anja is 31

亲自试一试 »

请注意,当您使用多个参数时,方法调用的参数数量必须与参数的数量相同,并且参数必须以相同的顺序传递。


返回值

这个void上面示例中使用的关键字指示该方法不应返回值。如果您希望该方法返回一个值,则可以使用原始数据类型(例如int,char等)而不是void,并使用return方法内的关键字:

示例

public class Main {
  static int myMethod(int x) {
    return 5 + x;
  }

  public static void main(String[] args) {
    System.out.println(myMethod(3));
  }
}
// Outputs 8 (5 + 3)

亲自试一试 »

此示例返回方法的总和两个参数:

示例

public class Main {
  static int myMethod(int x, int y) {
    return x + y;
  }

  public static void main(String[] args) {
    System.out.println(myMethod(5, 3));
  }
}
// Outputs 8 (5 + 3)

亲自试一试 »

您还可以将结果存储在变量中(推荐,因为它更易于阅读和维护):

示例

public class Main {
  static int myMethod(int x, int y) {
    return x + y;
  }

  public static void main(String[] args) {
    int z = myMethod(5, 3);
    System.out.println(z);
  }
}
// Outputs 8 (5 + 3)

亲自试一试 »



带有 If...Else 的方法

常用的是if...else方法内的语句:

示例

public class Main {

  // Create a checkAge() method with an integer variable called age
  static void checkAge(int age) {

    // If age is less than 18, print "access denied"
    if (age < 18) {
      System.out.println("Access denied - You are not old enough!");

    // If age is greater than, or equal to, 18, print "access granted"
    } else {
      System.out.println("Access granted - You are old enough!");
    }

  }

  public static void main(String[] args) {
    checkAge(20); // Call the checkAge method and pass along an age of 20
  }
}

// Outputs "Access granted - You are old enough!"

亲自试一试 »


通过练习测试一下

练习:

添加一个fname类型参数StringmyMethod,并输出"John Doe":

static void myMethod( ) {
  System.out.println( + " Doe");
}

public static void main(String[] args) {
  myMethod("John");
}

开始练习