🏵️

[Java]メソッド

2023/10/06に公開

メソッドとは

メソッドとは、いくつかの処理をひとまとめにしたものです。
処理をメソッドにしてまとめておくことで、同じ処理を繰り返し行う場合に同じコードを記述するのではなく、メソッドを繰り返し使用するだけでよくなります。
メソッドを使うことで、以下のようなメリットがあります。

  • コードが読みやすくなる
  • 変更が容易になる
  • 処理を再利用できる

メソッドの定義

メソッドは次のように記述して定義します。

public static 戻り値の型 メソッド名(引数リスト) {
   メソッドが呼び出されたときに実行される具体的な処理
}

例えば、helloメソッドを定義して表示をする場合は、

public class Lesson1 {
  public  static void hello() {
    System.out.println("奏さん、こんにちは!");
  }
}

メソッドの呼び出し

メソッドの呼び出し方は戻り値を返すかどうかで変わってきます。
このメソッド名を決めるとき、自分ひとりが見るわけではなくチームの仲間も見ることがほとんどなので、何を実行しているか一目見ればわかる名前にする。
戻り値を返さない場合は次のように記述して呼び出します。

メソッド名(引数リスト)

helloメソッドを呼び出すには下記のようにします。

戻り値を返さない場合
public class Lesson2 {
  public static void main(String[] args) {
    System.out.println("メソッドを呼び出します");
    hello();
    System.out.println("メソッドの呼び出しが終わりました。");
  }
  public static void hello() {
    System.out.println("奏さん、こんばんは!");
  }
}
実行結果
メソッドを呼び出します
奏さん、こんばんは!
メソッドの呼び出しが終わりました。

引数の利用

メソッドに引数を使って値を渡すためには、メソッド名の後の括弧の中に渡したい値を指定します。

1つの引数を渡す例

public class Lesson4 {
  public static void main(String[] args) {
    System.out.println("メソッドを呼び出します");
    hello("奏");
    hello("浅香");
    hello("すがわら");
    System.out.println("メソッドの呼び出しが終わりました。");
  }
  public static void hello(String name) {
    System.out.println(name + "さん、こんにちは");
  }
}
実行結果
メソッドを呼び出します
奏さん、こんにちは
浅香さん、こんにちは
すがわらさん、こんにちは
メソッドの呼び出しが終わりました。

複数の引数を渡す例

public class Lesson5 {
  public static void main(String[] args) {
    add(100, 20);
    add(200, 50);
  }
  public static void add(int x, int y) {
    int ans = x + y;
    System.out.println(x + "+" + y + "=" + ans + "です。");
  }
}
実行結果
100+20=120です。
200+50=250です。

戻り値の利用

メソッドの戻り値を使うことで、メソッドの処理の結果を呼び出し元で使用することができます。
値を戻すときは下記のように記述します。

public static 戻り値の型 メソッド名(引数リスト) {
  メソッドが実行された時に動く処理
  return 戻り値;
}

これまでたくさん使用してきたvoidは戻り値の型のことで何も戻さない場合に使用します。

public class Lesson6 {
  public static int add(int x, int y) {
    int ans = x + y;
    return ans;
  }
  public static void main(String[] args) {
    int ans = add(100, 10);
    System.out.println("100+10=" + ans);
  }
}
実行結果
100+10=110

まとめ

今日はここまでです。明日また続きをしようと思います。
選考ラッシュでうまいこと学習の時間が取れていないので章分けても少しずつ進めていきたいです!!

Discussion