26.1.4.11 複合的判断

日数を求める例を示します.m=0〜13について表示するようにしました.

class Days {
  public static void main(String argv[ ]) {
    int m, d;
    for(m=0; m<=13; m=m+1) {
       if(m < 1 || 12 < m) d=0;
       else if(m<=7)
               if(m%2==1)
                  d=31;
               else if(m==2)
                       d=28;
                    else
                       d=30;
          else if(m%2==1)
                  d=30;
               else
                  d=31;
     System.out.println(m + "月は" + d + "日です.");
    }
  }
}

fileDays.java (utf-8)

if形式が最大四重にもなっていますね.プログラムとしてはわかりにくいですが,複合的な判断を行なった例として見て下さい.また,elseは対応するifがどれかということがわかるような位置になるように空白で字下げをするのが作法です.