【Java入門】return文でメソッドの戻り値を使う(複数の戻り値も解説)中井2017/5/142019/5/10こんにちは!フリーライターの中井です。Javaにはメソッドの値を返す戻り値を使うためのreturn文があります。この記事では、メソッドの戻り値とはreturn文とはreturn文で戻り値を返す方法という基本的な内容から、複数の戻り値を返す方法などの応用的な使い方に関しても解説していきます。まとめメソッドの戻り値とはメソッドの戻り値とは、メソッドの呼び出し元に返す値のことをいいます。メソッドの戻り値がない場合は、次のようにメソッドの中ですべての処理を行うプログラムになります。");}}実行結果:答えは7です。return文とはreturn文は、そこで処理を終了し、呼び出し元に処理を戻します。通常、メソッドは最後まで処理を行うと呼び出し元に処理が戻るため、条件によって途中で処理を中断する場合などに使われます。次のサンプルプログラムを見てください。{System.out.println("呼び出し元に戻ります。");}}実行結果:呼び出し元に戻ります。上記のプログラムでは、numメソッドの引数num1が0の場合に、return文が実行されます。return文が実行された後は、それ以降の処理が行われていないことがわかります。return文で戻り値を返す方法return文を使って、呼び出し元に戻り値を返すことができます。戻り値を返すメソッドは次のように記述します。戻り値;}呼び出し元は次のように戻り値を使用することができます。メソッド名();}この呼び出し元のメソッドのように戻り値を返さない場合には、戻り値の型にvoidを指定します。voidは戻り値を返さないことを意味し、そのメソッド内ではreturn文を使う必要がありません。最初に紹介したプログラムを、戻り値のあるメソッドに書き換えていきましょう。addAns;}}実行結果:答えは7です。上記のaddメソッドは、引数を足し算し、その答えをreturn文を使って返します。mainメソッドでは、その戻り値を変数addNumに代入しています。これにより、mainメソッドで足し算の結果を表示することができています。条件によって異なる戻り値を返し、処理を終了させることもできます。次のサンプルプログラムを見てください。{System.out.println("割り切れます。{System.out.println("割り切れません。false;}}実行結果:割り切れます。true;」で戻り値としてtrueを返し、処理を終了します。false;」は実行されません。戻り値として、何も値が入っていないことを表すnullを返すこともできます。arrays[0];}}実行結果:anull上記のgetFirstStringメソッドは、引数として受け取ったString配列arraysの最初の要素を返すメソッドです。null;」でnullを返します。getFirstStringメソッドは、メソッドの定義でString型の戻り値を返す宣言をしているので、返す値がない場合も「return;」で処理を終了することはできません。複数の戻り値を返す方法returnは非常に便利ですが、1つの戻り値しか返せないのが難点です。複数の値を返したいときにはどうすればよいのでしょうか?複数の値を返すには、複数の変数を持った1つのクラスにして返す方法が考えられます。変数num1も変数num2も返したいときには、num1とnum2を持つ1つのクラスにすれば返すことができます。次のサンプルプログラムを見ていきましょう。calc;}}実行結果:足し算:5掛け算:6上記のプログラムでは、calcMethodで足し算と掛け算を行い、2つの計算結果を1つのクラスにまとめて、mainメソッドに返し出力しています。このように、複数の変数を1つのクラスにまとめてreturnすることで、複数の戻り値を返す事ができます。exitメソッドとの違いここでは、exitメソッドとreturn文の違いを解説します。メソッドの処理を終了させるにはreturn文を使いますが、プログラムの全体を終了させるにはexitメソッドを使います。return文で処理を終了させる場合には、finallyブロック内の処理が実行されます。exitメソッドでプログラムを終了させる場合には、finallyブロック内の処理は実行されません。次のプログラムで確認してみましょう。}}実行結果:tryの処理finallyの処理このプログラムの実行結果から、return文ではfinallyブロック内の処理が実行されることが確認できました。exitメソッドの使い方はこちらの記事で詳しく解説しているので、ぜひ確認してください。2019年11月13日まとめこの記事ではメソッドの戻り値を使うreturn文について解説しました。戻り値を使うとメソッドの処理の結果を呼び出し元で利用できます。return文は1つの値しか返せませんが、1つのクラスに複数の値をまとめることで複数の値を返すことができます。メソッドの戻り値について忘れてしまったらこの記事を確認してくださいね!TweetPocket無料でSEからWebエンジニアへ転職しませんか?侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、システムエンジニアという職業だけどコードが書けない事務作業が多くスキルがないため将来が不安スクールに通うと完全未経験者と同じスタートになるからレベルが合わないという、すでに知識があるSEならではのお悩みがあることに気づきました。弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。こちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。美容系、ライフスタイル系含めこれまでに500本以上執筆。趣味はオンラインゲームにフリーソフトの情報収集。プログラミンとの出会い-----------------------------------------------------------------------------------------PCとプログラミングは大学からです。それまでは、PCは触ると壊れると思い込んでました。大学の授業で面白そうな理由でJavaを専攻。授業についていけず、後ろの席の子に課題をやってもらってました。そんなプログラミング音痴な状態で社会人を迎え、先輩からVBAがオススメと言われVBAを職場の人から教えてもらい習得。その後、自分の業務に携わるものおは全てVBAを組みました。会社を退職後、再度Javaを勉強する機会に恵まれ、大学でわからなかったことが一気に理解できるように。念願のAndroidアプリでTwitterのクライアントアプリを作れるまでになりました。以後、文章の修行の傍らJavaの最新情報を追う日々が続いています。