Javaのreturnとは?メソッドの結果を返す・処理を終える書き方

本記事は、Schooの「Java入門 初級【2026年版】」第6回「メソッド」を学ぶ前後に、Javaの return の役割を整理したい方向けのステップアップ学習記事です。
ただし、Schooを受講していない方でも、メソッド、引数、戻り値の基本を学んだあとに読み進められる内容にしています。
Schoo コースページ:Java入門 初級【2026年版】
return は、メソッドの結果を呼び出し元へ返すために使います。さらに、return が実行されると、その時点でメソッドの処理は終わります。
returnはメソッドの結果を返す
戻り値があるメソッドでは、return を使って呼び出し元に結果を返します。次の例では、注文金額に応じて送料を返しています。
public static int calculateShippingFee(int total) {
if (total >= 3000) {
return 0;
}
return 500;
}
total が3000以上なら 0 を返し、それ以外なら 500 を返します。メソッド名の前に int と書いているため、このメソッドは整数を返す必要があります。
return は値を呼び出し元へ返し、その時点でメソッドの処理を終えます。returnした値は呼び出し元の変数に入る
次のように呼び出すと、calculateShippingFee メソッドが返した値が fee に入ります。
int fee = calculateShippingFee(1200);
System.out.println(fee);
calculateShippingFee(1200) では、total に 1200 が入ります。3000以上ではないため、return 500; が実行され、呼び出し元の fee には 500 が入ります。
returnが実行されるとメソッドはそこで終わる
return は値を返すだけではありません。return が実行された時点で、メソッドの残りの処理は実行されません。
public static int calculateShippingFee(int total) {
if (total >= 3000) {
return 0;
}
return 500;
// ここより下に処理を書いても実行されません
}
この性質を使うと、「条件に当てはまったらすぐ返す」という書き方ができます。処理を上から順番に読んだときに、どこで終わるのかを意識すると、return の動きが見えやすくなります。
voidメソッドではreturnだけで途中終了できる
戻り値がない void メソッドでも、return; と書くことがあります。この場合は値を返すのではなく、メソッドの処理をそこで終えるために使います。
public static void printOrderMessage(int total) {
if (total <= 0) {
return;
}
System.out.println("注文金額は " + total + " 円です");
}
total が0以下の場合は、表示する前に return; でメソッドを終えています。戻り値ありの return 500; とは違い、void メソッドの return; には返す値を書きません。
確認問題
int fee = calculateShippingFee(1200);と書いたとき、return 500;の500はどこに入りますか。returnが実行されたあと、同じメソッド内の残りの処理は実行されますか。voidメソッドでreturn;と書く場合、どのような目的で使いますか。
演習後の確認:こちらのページを使って、自分で考えた内容を見直せます。
あわせて読みたい関連記事
まとめ
return は、メソッドの結果を呼び出し元へ返すための書き方です。また、return が実行されると、その時点でメソッドの処理は終わります。戻り値ありのメソッドでは型に合う値を返し、void メソッドでは return; で途中終了できます。