回答編集履歴

1

回答内容追加

2016/04/22 07:29

投稿

tkturbo
tkturbo

スコア5572

test CHANGED
@@ -7,3 +7,67 @@
7
7
 
8
8
 
9
9
  これじゃだめですかね?
10
+
11
+
12
+
13
+ 追記:
14
+
15
+ swordoneさんのソースを一部改編したうえで解説してみます。
16
+
17
+
18
+
19
+ ```java
20
+
21
+ コード
22
+
23
+ // int month は前のほうで宣言したものを再利用
24
+
25
+ month = cal.get(Calendar.MONTH);
26
+
27
+ for( /* ← for文の初期処理部分は省略 */
28
+
29
+ ;cal.get(Calendar.MONTH) == month /* ← for文の続行判定:ループに入った時と月が同じ間だけ実行 */
30
+
31
+ ;cal.add(Calendar.DATE, 1) /* ← for文の次処理準備:Calendarインスタンス「cal」の日付を翌日に進める */
32
+
33
+ ){
34
+
35
+
36
+
37
+ int day = cal.add(Calendar.DATE); // 何度も使うので日付の数値だけ変数に確保
38
+
39
+
40
+
41
+ // 区切りスペース出力
42
+
43
+ System.out.print(" ");
44
+
45
+
46
+
47
+ // dayが10未満なら10の位の文のスペース出力
48
+
49
+ if ( day < 10 ) System.out.print(" ");
50
+
51
+
52
+
53
+ // 日付出力
54
+
55
+ System.out.print(day);
56
+
57
+
58
+
59
+ // dayの曜日 == calの日付の曜日を取得・土曜日だったら開業
60
+
61
+ if(cal.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY){
62
+
63
+ System.out.println();
64
+
65
+ }
66
+
67
+ }
68
+
69
+ ```
70
+
71
+ 各行の意味はコメントで記述しています。
72
+
73
+ 理解の一助になれば。