回答編集履歴
3
バグじゃなかったですorz. Calendar定数置き換え不足修正
test
CHANGED
@@ -30,13 +30,13 @@
|
|
30
30
|
|
31
31
|
|
32
32
|
|
33
|
-
|
33
|
+
Calendar cal = Calendar.getInstance();
|
34
34
|
|
35
|
-
cal.set(
|
35
|
+
cal.set(YEAR, year);
|
36
36
|
|
37
|
-
cal.set(
|
37
|
+
cal.set(MONTH, month);
|
38
38
|
|
39
|
-
cal.set(
|
39
|
+
cal.set(DATE, 1);
|
40
40
|
|
41
41
|
|
42
42
|
|
@@ -52,7 +52,7 @@
|
|
52
52
|
|
53
53
|
|
54
54
|
|
55
|
-
cal.add(
|
55
|
+
cal.add(DATE, SUNDAY-cal.get(DAY_OF_WEEK)); //1日が属する週の日曜日の日付. ex)2019/5/1→2019/4/28
|
56
56
|
|
57
57
|
for (; cal.get(MONTH) <= month; cal.add(DATE, 1)) {
|
58
58
|
|
2
週の始まりが前年だとうるう年判定に失敗するバグ対応
test
CHANGED
@@ -38,8 +38,6 @@
|
|
38
38
|
|
39
39
|
cal.set(Calendar.DATE, 1);
|
40
40
|
|
41
|
-
cal.add(Calendar.DATE, SUNDAY-cal.get(DAY_OF_WEEK)); //1日が属する週の日曜日の日付. ex)2019/5/1→2019/4/28
|
42
|
-
|
43
41
|
|
44
42
|
|
45
43
|
System.out.println();
|
@@ -54,6 +52,8 @@
|
|
54
52
|
|
55
53
|
|
56
54
|
|
55
|
+
cal.add(Calendar.DATE, SUNDAY-cal.get(DAY_OF_WEEK)); //1日が属する週の日曜日の日付. ex)2019/5/1→2019/4/28
|
56
|
+
|
57
57
|
for (; cal.get(MONTH) <= month; cal.add(DATE, 1)) {
|
58
58
|
|
59
59
|
System.out.printf(cal.get(MONTH)<month?" ":"%2d ", cal.get(DATE));
|
1
Calendar 定数を import static 化
test
CHANGED
@@ -9,6 +9,8 @@
|
|
9
9
|
import java.util.Calendar;
|
10
10
|
|
11
11
|
import java.util.Scanner;
|
12
|
+
|
13
|
+
import static java.util.Calendar.*;
|
12
14
|
|
13
15
|
|
14
16
|
|
@@ -36,7 +38,7 @@
|
|
36
38
|
|
37
39
|
cal.set(Calendar.DATE, 1);
|
38
40
|
|
39
|
-
cal.add(Calendar.DATE,
|
41
|
+
cal.add(Calendar.DATE, SUNDAY-cal.get(DAY_OF_WEEK)); //1日が属する週の日曜日の日付. ex)2019/5/1→2019/4/28
|
40
42
|
|
41
43
|
|
42
44
|
|
@@ -52,11 +54,11 @@
|
|
52
54
|
|
53
55
|
|
54
56
|
|
55
|
-
for (; cal.get(
|
57
|
+
for (; cal.get(MONTH) <= month; cal.add(DATE, 1)) {
|
56
58
|
|
57
|
-
System.out.printf(cal.get(
|
59
|
+
System.out.printf(cal.get(MONTH)<month?" ":"%2d ", cal.get(DATE));
|
58
60
|
|
59
|
-
if (cal.get(
|
61
|
+
if (cal.get(DAY_OF_WEEK) == SATURDAY) System.out.println();
|
60
62
|
|
61
63
|
}
|
62
64
|
|