マンガで分かる Java入門講座

第8章 メソッド
8-3. 処理途中でのreturn

メソッドの途中で、returnを用いて処理を打ち切る方法を紹介します。

● メソッドの内部処理途中でのreturn

 メソッドの内部処理は、途中で打ち切ることができます。その際には「return」を処理途中で使います。

ソースコード)メソッドの内部処理途中でのreturn
public boolean checkEven(int chckN) {
    if (chckN % 2 == 0) {
        return true;  // 偶数
    }
    return false;     // 奇数
}

● 終了時には戻り値が必要

 戻り値が必要なメソッドの処理を、途中で打ち切った際は注意が必要です。どういった条件分岐の結果でも、必ず戻り値を戻して終了できるようにしなければなりません。

ソースコード)エラーになるコード
public boolean checkEven(int chckN) {
    if (chckN % 2 == 0) {
        return true;
    }
    // 「return 戻り値;」を削る
    // 戻り値が戻されないからエラーになる
}

ソースコード)エラーにならないコード
public boolean checkEven(int chckN) {
    if (chckN % 2 == 0) {
        return true;
    }
    return false;
}

● 戻り値のないメソッドの場合

 ただし、戻り値のないメソッドの場合は、上記のような制約はありません。これは、戻り値のないメソッドでは、そもそも終了時にreturnが不要だからです。

ソースコード)戻り値のないメソッドの場合
private int n = 0;

public void addEven(int newN) {
    if (newN % 2 != 0) {
        return;  // 奇数
    }
    n += newN;   // 偶数
    // 「return;」がなくても大丈夫
}

この講座のマンガ部分は「箱人形マンガ(Box Comic) 」で作成しています。
作成:2013/05/31  更新:2015/08/09  [Permalink]

クロクロ・ショップ
特殊な技術書多数あります
レトロ風RPG フルスクラッチ開発 全コード
レトロゲーム風RPGの全コードを掲載して解説した本
HTML5とJavaScriptで作る 落ち物パズルゲーム 全コード
『テトリス』や『ぷよぷよ』に類似した落ち物パズルゲームの全コードを掲載して解説した本
JavaScriptでリバーシゲームをつくろう
ライブラリを使わずに全コードを書いて、リバーシゲームを作るまでを徹底解説
ワールドマップ自動生成読本
二次元ゲームのワールドマップを自動生成するための本
レトロゲームファクトリー
過去のゲームを最新機に移植する会社のお仕事小説(新潮社)
顔貌売人 ハッカー探偵 鹿敷堂桂馬
プログラマーが探偵役のエンタメ・ミステリー第2弾 最先端の情報犯罪に安藤と鹿敷堂が挑みます(文藝春秋)
裏切りのプログラム ハッカー探偵 鹿敷堂桂馬
プログラマー鹿敷堂桂馬が、女性社長の安藤裕美と共に、IT業界で起きた事件に挑む。2016年の松本清張賞の最終候補作(文藝春秋)
×