Java 速習チュートリアル

Java のメソッド・パラメータ

1. パラメータとアーギュメント(引数)

メソッドに情報を渡すための仕組みが「パラメータ」です。パラメータは、メソッド内部で バリアブル(変数) として機能します。

パラメータはメソッド名の後、括弧 () の中に指定します。パラメータは必要な数だけ追加でき、複数ある場合はカンマで区切ります。

以下の例では、fname という名前の String 型パラメータを受け取るメソッドを作成しています。メソッドが呼び出されると、名前が渡され、メソッド内部でフルネームを出力するために使用されます。

1.1 パラメータを使用したコード例

public class Main {
  // String型のパラメータ「fname」を受け取るメソッド
  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パラメータ であり、LiamJennyAnjaアーギュメント です。

2. 複数のパラメータ

メソッドには、必要に応じて複数のパラメータを定義することができます。

2.1 複数パラメータのコード例

public class Main {
  // 名前(String)と年齢(int)の2つのパラメータを持つメソッド
  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
// 出ity: Anja is 31

       注意: 複数のパラメータを扱う場合、メソッドの呼び出し側では、定義されたパラメータと同じ数、かつ同じ順序で アーギュメント を渡す必要があります。

3. メソッド内での If...Else の活用

メソッドの内部で if...else ステートメントを使用するのは、非常に一般的なパターンです。

3.1 条件分岐を含むメソッドのコード例

public class Main {

  // int型のパラメータ「age」を受け取り、年齢チェックを行うメソッド
  static void checkAge(int age) {

    // 年齢が18歳未満の場合、"Access denied" を出力
    if (age < 18) {
      System.out.println("Access denied - You are not old enough!");

    // 年齢が18歳以上の場合、"Access granted" を出力
    } else {
      System.out.println("Access granted - You are old enough!");
    }

  }

  public static void main(String[] args) {
    // checkAgeメソッドを呼び出し、アーギュメントとして20を渡す
    checkAge(20); 
  }
}
// 出力: "Access granted - You are old enough!"