回答編集履歴
1
追加
    
        answer	
    CHANGED
    
    | 
         @@ -1,2 +1,27 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            桁合わせのためです.
         
     | 
| 
       2 
     | 
    
         
            -
            そのコードが無い状態で実行するとわかりますが,カレンダー表示がずれます.
         
     | 
| 
      
 2 
     | 
    
         
            +
            そのコードが無い状態で実行するとわかりますが,カレンダー表示がずれます.
         
     | 
| 
      
 3 
     | 
    
         
            +
            このコードがやっているのは,
         
     | 
| 
      
 4 
     | 
    
         
            +
            0. 現在時刻に設定されたGregorianCalendarオブジェクトを作成し,今日の月日を取得
         
     | 
| 
      
 5 
     | 
    
         
            +
            0. Calendar.DAY_OF_MONTHフィールドを1,つまり今月の1日に設定する
         
     | 
| 
      
 6 
     | 
    
         
            +
            0. doループで今月のカレンダーを出力する.ループ内で日付を1日ずつ加え,月が変わるまで続ける
         
     | 
| 
      
 7 
     | 
    
         
            +
            ご質問のif文は「日が1桁の場合」という条件分岐です.カレンダーを表示する関係上,1桁の日付は先頭を空白で埋めないとずれてしまうのです.試しにそのif文があるのと無いのとでは次のように出力が変わります.
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            ifなし
         
     | 
| 
      
 10 
     | 
    
         
            +
            ```
         
     | 
| 
      
 11 
     | 
    
         
            +
            Sun Mon Tue Wed Thu Fri Sat
         
     | 
| 
      
 12 
     | 
    
         
            +
                            1  2  3  
         
     | 
| 
      
 13 
     | 
    
         
            +
            4  5  6  7  8* 9  10  
         
     | 
| 
      
 14 
     | 
    
         
            +
            11  12  13  14  15  16  17  
         
     | 
| 
      
 15 
     | 
    
         
            +
            18  19  20  21  22  23  24  
         
     | 
| 
      
 16 
     | 
    
         
            +
            25  26  27  28  29  30  31  
         
     | 
| 
      
 17 
     | 
    
         
            +
            ```
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
            ifあり
         
     | 
| 
      
 20 
     | 
    
         
            +
            ```
         
     | 
| 
      
 21 
     | 
    
         
            +
            Sun Mon Tue Wed Thu Fri Sat
         
     | 
| 
      
 22 
     | 
    
         
            +
                             1   2   3  
         
     | 
| 
      
 23 
     | 
    
         
            +
             4   5   6   7   8*  9  10  
         
     | 
| 
      
 24 
     | 
    
         
            +
            11  12  13  14  15  16  17  
         
     | 
| 
      
 25 
     | 
    
         
            +
            18  19  20  21  22  23  24  
         
     | 
| 
      
 26 
     | 
    
         
            +
            25  26  27  28  29  30  31  
         
     | 
| 
      
 27 
     | 
    
         
            +
            ```
         
     |