導入
「2つの数を足す」処理を何度も書くくらいなら、1回だけ書いておいて、必要なときに呼び出せたら便利だと思いませんか。それを実現するのがメソッドです。
説明
public class Main {
public static void main(String[] args) {
int result = add(3, 5);
System.out.println(result);
System.out.println(add(10, 20));
}
static int add(int a, int b) {
return a + b;
}
}
static int add(int a, int b) { ... }… メソッドの定義です。戻り値の型(ここではint)・メソッド名(add)・引数(int a, int b)の順に書きます。int a, int b… 引数(パラメータ)。呼び出し側から渡された値がここに入ります。return a + b;… 戻り値。メソッドの呼び出し元にこの値を返して、メソッドの実行を終えます。add(3, 5)… メソッドの呼び出し。渡した3と5が、それぞれaとbに入ります。staticは「クラスに属するメソッド(インスタンスを作らなくても呼べる)」という意味です。詳しくはオブジェクト指向コースで扱いますが、Mainクラスのmainから直接呼ぶメソッドは、ひとまずstaticをつけると覚えておきましょう。
一度書いた add は、何度でも違う引数で呼び出せます。同じ処理を書き直す必要がなくなるのがメソッドの利点です。
やってみよう
下のエディタで add に渡す数値をいろいろ変えて呼び出してみましょう。add の中身を a - b(引き算)に変えて、結果がどう変わるかも試してみてください。
演習
2つの int を受け取り、大きい方を返す max(int a, int b) メソッドを作り、main から max(15, 42) を呼び出して結果を表示してください(結果は 42)。
ヒント1を見る
static int max(int a, int b) { if (a > b) { return a; } return b; } のように書きます。
ヒント2を見る
main の中で System.out.println(max(15, 42));。