Javaプログラミングのif文で、肯定的な条件分岐を優先する書き方

Javaプログラミングにおけるif文の条件分岐を、ちょっとでもわかりやすく記述したいです。

Javaプログラミングのif文において、肯定的な条件分岐を優先する書き方があります。
肯定的な条件が成り立つ場合、セミコロン(;)だけを記述する書き方です。

if (肯定的な条件) {
    ; //処理を続けます
}
else{
    //その他の場合の処理をします
}

if文の条件分岐を「~である」と最初に書くことで、プログラム処理の流れをわかりやすくできます。

プログラム処理がわかりやすい、Javaプログラミングのif文において肯定文で条件を書く事

Javaプログラミングのif文の条件指定において、肯定文で条件を書くほうがプログラム処理がわかりやすい、と思います。

その場合、肯定的な条件を優先する書き方があります。

「if文で、肯定的な条件分岐を優先する書き方」の例

以下にif文において、「肯定的な条件分岐を優先する書き方」について、例を示します。
プログラムの詳細を理解する必要は、ありません。

//例:URLアドレスが "... /deleteAction.do" の時、ここが実行される。
public ActionErrors validate(ActionMapping mapping, HttpServletRequest request){
        
    ActionErrors errors = new ActionErrors();
        
    if (super.action.equals("copy")){
        ;
    }
    else{
        super.servlet.log("無効なアクション=" + action);
        return errors;
    }

    ....

}

if文で「条件を肯定文」で書いています。
「action変数が、文字列"copy"と同じであるなら」
と、書いています。

その「肯定的な条件」が成り立つ場合、
;セミコロンだけ、つまり何もせず処理を続ける」
と、書いています。

if文の条件で「同じである」という肯定的な書き方を、優先しています。

そしてif文の条件を肯定文にしたかったから、「;セミコロン」を使っています。

「その通り!」
「~である」と判断・イメージ画像

if文で、否定的な条件分岐の書き方

ちなみに次のように、if文の条件分岐を「否定文」を使って、書くこともできます。

if (super.action.equals("copy") == false){
    super.servlet.log("無効なアクション=" + action);
    return errors;
}

この場合は、
「action変数が、文字列"copy"と同じでないなら」
という書き方になります。

条件が否定文の場合は、
if ( ... == false) の「== false」を、省略できません。

※ここでは、否定の等価比較演算子「!」の使用を考えていません。falseの否定は「わかりにくい」と考えています。

if文の条件分岐において、肯定文で書くようにしましょう

次の事を意識したい場合、優先的に「肯定文で条件分岐」を書くようにしてみましょう。

プログラム処理の文脈を、肯定文で理解したい。
「~であるなら、~する」と理解したい。

条件が2個以上ある時
「~である、かつ、~である」という文で、処理を理解したい。

例:
//aか1である、かつ、bが2である、かつ、cが3であるなら
if (a == 1 && b == 2 && c == 3){
    //処理を続けます
    ;
}
//そうでないなら
else{
    //処理を中止します
    return;
}

if文の == true を、省略したい。

例:
if (action.equals("copy") == true) を、if (action.equals("copy")) と、書きたい。

※この記事は、2004年7月当時の記事になります。

【まとめ記事】Javaアプリの品質を保つため、Javaソースコードを書くための工夫

Javaソースコードを正しく書くための、ちょっとした工夫について、ご紹介しています。 変数の寿命を限定する書き方。 肯定的な条件を優先して条件分岐する書き方。 クラス…