※本サイトで紹介している商品・サービス等の外部リンクには、アフィリエイト広告が含まれる場合があります。
あけましておめでとうございます。こんぶです。
今年も、少しでも皆さんのお役に立てるようなブログを更新していきますので、よろしくお願いします!
今日は、戻り値を利用したメソッドについて学んでいきましょう!
私の自己紹介等は、こちらからどうぞ。
また、Javaの学習を最初から進めていきたい方は、Java-1から見てみてくださいね。
戻り値の利用
呼び出されたメソッドから呼び出し元のメソッドへ値を返すことを「値を戻す」または「値を返す」といい、戻される値のことを「戻り値」または「返り値」といいます。
戻り値を利用したメソッドの定義
戻り値を使用したい場合は、メソッドの定義をクラスブロック内で次のように記載します。
「return 戻り値;」という文がありますが、こちらは「return文」と呼ばれ、returnの後ろに書かれた値を呼び出し元に返してくれます。
ちなみに「return 変数名;」と記載すると、変数に入っている値を戻してくれます。
戻り値には、数値や文字列のようなリテラルや、変数名等を指定できます。
「戻り値の型」部分には、return文で戻される値の型を指定します。
前回までのように何も戻さない場合は「void」と記載していましたが、「void」は「何もない」という意味です。
戻り値を利用したメソッドの呼び出し
戻り値は、基本的に変数を用意して受け取る必要があります。
戻り値を利用してメソッドを呼び出す場合は、次のように記載します。
「=」演算子の評価の方向は「左←右」なので、まずメソッドが呼び出され、戻り値がある場合は右辺が評価されてメソッドの戻り値に置き換わります。その後、戻り値が左辺の変数に代入されます。
ちなみに、戻り値は1つしか指定できません。
戻り値を変数で受けずに使用する
メソッドの戻り値を変数で受けずにそのまま使用することもできます。
その場合は、メソッドを使用したい部分で「メソッド名(引数リスト)」のように記載します。
簡潔には書けますが、同じ結果を複数回利用する場合は変数に代入する方が効率的です。
後半でコード例も紹介します。
return文の役割
return文は値を戻すだけではなく、「メソッドの終了」という役割もあります。
なので、return文の後に処理を書いたとしても実行されることはありません。
コンパイルエラーになってしまうので、気を付けましょう。
戻り値を利用したメソッド例(戻り値を変数で受ける)
戻り値を変数で受ける場合の例を見てみましょう。
この例では、メソッドの定義(下のブロック)で、int型変数num1とnum2を引数として設定した「calculateSum」メソッドを定義し、呼び出し元のメソッドから受け取った2つの変数aとb(8と12)を足し算した値を「return文」で戻り値として呼び出し元のメソッドへ戻しています。
メソッドの呼び出しでは、int型変数aとbに入っている値(8と12)を引数として渡しています。その引数を使用してメソッドで処理された値を「戻り値」として受け取り、int型変数「result」に代入しています。そして、「result」を使用した文章を画面に表示させています。
ちなみに、このコードを実行すると次のように画面に表示されます。
戻り値を利用したメソッド例(戻り値を変数で受けない)
戻り値を変数で受けずに直接使用する場合のコード例も見てみましょう。
この例では、メソッドの定義(下のブロック)で、int型変数num1とnum2を引数として設定した「calculateSum」メソッドを定義し、呼び出し元のメソッドから受け取った2つの数値を足し算した値を「return文」で戻り値として呼び出し元のメソッドへ戻しています。
メソッドの呼び出しでは、画面に表示させる内容の中で「5と7」「10と15」をそれぞれ引数として渡してメソッドを呼び出しています。その引数を使用してメソッドで処理された値を「戻り値」として受け取り、そのまま画面への表示に使用しています。
ちなみに、このコードを実行すると次のように画面に表示されます。
今回のまとめ
★戻り値を利用したメソッドの定義はクラスブロック内で次のように記載する
★戻り値には、数値や文字列のようなリテラルや、変数名等を指定できる
★戻り値を利用してメソッドを呼び出す場合は、次のように記載する
★戻り値は1つしか指定できない
★メソッドの戻り値を変数で受けずにそのまま使用する場合は、メソッドを使用したい部分で「メソッド名(引数リスト)」のように記載する(変数に代入する方が効率的なこともある)
★return文の役割には「値を戻す」、「メソッドの終了」がある
★return文の後に処理を書いたとしても実行されず、コンパイルエラーになる
・値を戻す(値を返す):呼び出されたメソッドから呼び出し元のメソッドへ値を返すこと
・戻り値(返り値):呼び出されたメソッドから呼び出し元のメソッドへ戻される値のこと
・return文:戻り値を使用したメソッドで「return 戻り値;」のように記載される文のこと
・void:「何もない」という意味で、戻り値がない場合に使用する
次回は、メソッドの第4弾として「オーバーロードの利用」について説明していこうと思います。
それでは、こんぶはじゃ~
コメント