Javaの引数と戻り値とは?メソッドに値を渡して結果を受け取る仕組み

本記事は、Schooの「Java入門 初級【2026年版】」第6回「メソッド」を学ぶ前後に、Javaの引数と戻り値の考え方を整理したい方向けのステップアップ学習記事です。
ただし、Schooを受講していない方でも、メソッドを学び始めた段階で読み進められる内容にしています。
Schoo コースページ:Java入門 初級【2026年版】
メソッドは、呼び出すだけで同じ処理を実行できる仕組みです。さらに、呼び出すときに値を渡したり、処理した結果を受け取ったりできます。この「渡す値」が引数、「返ってくる結果」が戻り値です。
引数はメソッドに渡す値
次の例では、add(5, 3) と書いて、add メソッドに 5 と 3 を渡しています。
int result = add(5, 3);
呼び出し元で渡す 5 や 3 を実引数と呼びます。一方、メソッド側で値を受け取る int a や int b を仮引数と呼びます。
public static int add(int a, int b) {
int sum = a + b;
return sum;
}
最初は用語よりも、add(5, 3) の 5 が a に入り、3 が b に入る、と考えると理解しやすくなります。
return sum; で返した結果が、呼び出し元の result に入るadd(5, 3) の 5 と 3 がメソッド側の a と b に入り、return された値が result に入ります。戻り値はメソッドから返ってくる結果
add メソッドでは、受け取った a と b を足して、その結果を return で呼び出し元に返しています。
public static int add(int a, int b) {
int sum = a + b;
return sum;
}
return sum; によって返された値は、呼び出し元の int result = add(5, 3); の位置に戻ります。そのため、result には 8 が入ります。
戻り値の型はメソッド名の前に書く
戻り値があるメソッドでは、メソッド名の前に「返す値の型」を書きます。次の add メソッドは、整数を返すため int と書いています。
public static int add(int a, int b) {
int sum = a + b;
return sum;
}
一方、結果を返さず、画面に表示するだけのメソッドでは void を使います。
public static void printTotal(int total) {
System.out.println("合計は " + total + " です");
}
void は「戻り値がない」という意味です。printTotal は表示する処理なので、呼び出し元で結果を受け取る必要がありません。
引数と戻り値を使ったプログラム
次のプログラムでは、注文金額と送料をメソッドに渡し、合計金額を戻り値として受け取っています。
ファイル名: ArgumentReturnExample.java
public class ArgumentReturnExample {
public static void main(String[] args) {
int total = calculateTotal(1200, 300);
System.out.println("請求金額は " + total + " 円です");
}
public static int calculateTotal(int price, int shippingFee) {
int total = price + shippingFee;
return total;
}
}
calculateTotal(1200, 300) の 1200 は price に、300 は shippingFee に入ります。メソッドの中で合計を計算し、return total; で返した値が、呼び出し元の total に入ります。
確認問題
calculateTotal(1200, 300)の1200と300は、メソッド側のどの仮引数に入りますか。return total;によって返された値は、呼び出し元のどこに入りますか。- 戻り値がないメソッドでは、メソッド名の前にどのキーワードを書きますか。
演習後の確認:こちらのページを使って、自分で考えた内容を見直せます。
あわせて読みたい関連記事
まとめ
引数はメソッドに渡す値、戻り値はメソッドから返ってくる結果です。add(5, 3) のような呼び出しでは、渡した値がメソッド側の変数に入り、return した値が呼び出し元に戻る、という流れで考えると理解しやすくなります。