@@ -145,24 +145,28 @@ private static String numToChinese(int month, int day, int leap) {
145
145
* 1001 0101 0101 1010 1011 1111
146
146
* 闰九月 农历正月初一对应公历1月31号
147
147
*/
148
- private static final int LUNAR_INFO [] = {
149
- 0x04bd8 , 0x04ae0 , 0x0a570 , 0x054d5 , 0x0d260 , 0x0d950 , 0x16554 , 0x056a0 , 0x09ad0 , //
150
- 0x055d2 , 0x04ae0 , 0x0a5b6 , 0x0a4d0 , 0x0d250 , 0x1d255 , 0x0b540 , 0x0d6a0 , 0x0ada2 , //
151
- 0x095b0 , 0x14977 , 0x04970 , 0x0a4b0 , 0x0b4b5 , 0x06a50 , 0x06d40 , 0x1ab54 , 0x02b60 , //
152
- 0x09570 , 0x052f2 , 0x04970 , 0x06566 , 0x0d4a0 , 0x0ea50 , 0x06e95 , 0x05ad0 , 0x02b60 , //
153
- 0x186e3 , 0x092e0 , 0x1c8d7 , 0x0c950 , 0x0d4a0 , 0x1d8a6 , 0x0b550 , 0x056a0 , 0x1a5b4 , //
154
- 0x025d0 , 0x092d0 , 0x0d2b2 , 0x0a950 , 0x0b557 , 0x06ca0 , 0x0b550 , 0x15355 , 0x04da0 , //
155
- 0x0a5d0 , 0x14573 , 0x052d0 , 0x0a9a8 , 0x0e950 , 0x06aa0 , 0x0aea6 , 0x0ab50 , 0x04b60 , //
156
- 0x0aae4 , 0x0a570 , 0x05260 , 0x0f263 , 0x0d950 , 0x05b57 , 0x056a0 , 0x096d0 , 0x04dd5 , //
157
- 0x04ad0 , 0x0a4d0 , 0x0d4d4 , 0x0d250 , 0x0d558 , 0x0b540 , 0x0b5a0 , 0x195a6 , 0x095b0 , //
158
- 0x049b0 , 0x0a974 , 0x0a4b0 , 0x0b27a , 0x06a50 , 0x06d40 , 0x0af46 , 0x0ab60 , 0x09570 , //
159
- 0x04af5 , 0x04970 , 0x064b0 , 0x074a3 , 0x0ea50 , 0x06b58 , 0x055c0 , 0x0ab60 , 0x096d5 , //
160
- 0x092e0 , 0x0c960 , 0x0d954 , 0x0d4a0 , 0x0da50 , 0x07552 , 0x056a0 , 0x0abb7 , 0x025d0 , //
161
- 0x092d0 , 0x0cab5 , 0x0a950 , 0x0b4a0 , 0x0baa4 , 0x0ad50 , 0x055d9 , 0x04ba0 , 0x0a5b0 , //
162
- 0x15176 , 0x052b0 , 0x0a930 , 0x07954 , 0x06aa0 , 0x0ad50 , 0x05b52 , 0x04b60 , 0x0a6e6 , //
163
- 0x0a4e0 , 0x0d260 , 0x0ea65 , 0x0d530 , 0x05aa0 , 0x076a3 , 0x096d0 , 0x04bd7 , 0x04ad0 , //
164
- 0x0a4d0 , 0x1d0b6 , 0x0d250 , 0x0d520 , 0x0dd45 , 0x0b5a0 , 0x056d0 , 0x055b2 , 0x049b0 , //
165
- 0x0a577 , 0x0a4b0 , 0x0aa50 , 0x1b255 , 0x06d20 , 0x0ada0
148
+ private static final int [] LUNAR_INFO = {
149
+ 0x04bd8 ,0x04ae0 ,0x0a570 ,0x054d5 ,0x0d260 ,0x0d950 ,0x16554 ,0x056a0 ,0x09ad0 ,0x055d2 ,//1900-1909
150
+ 0x04ae0 ,0x0a5b6 ,0x0a4d0 ,0x0d250 ,0x1d255 ,0x0b540 ,0x0d6a0 ,0x0ada2 ,0x095b0 ,0x14977 ,//1910-1919
151
+ 0x04970 ,0x0a4b0 ,0x0b4b5 ,0x06a50 ,0x06d40 ,0x1ab54 ,0x02b60 ,0x09570 ,0x052f2 ,0x04970 ,//1920-1929
152
+ 0x06566 ,0x0d4a0 ,0x0ea50 ,0x06e95 ,0x05ad0 ,0x02b60 ,0x186e3 ,0x092e0 ,0x1c8d7 ,0x0c950 ,//1930-1939
153
+ 0x0d4a0 ,0x1d8a6 ,0x0b550 ,0x056a0 ,0x1a5b4 ,0x025d0 ,0x092d0 ,0x0d2b2 ,0x0a950 ,0x0b557 ,//1940-1949
154
+ 0x06ca0 ,0x0b550 ,0x15355 ,0x04da0 ,0x0a5b0 ,0x14573 ,0x052b0 ,0x0a9a8 ,0x0e950 ,0x06aa0 ,//1950-1959
155
+ 0x0aea6 ,0x0ab50 ,0x04b60 ,0x0aae4 ,0x0a570 ,0x05260 ,0x0f263 ,0x0d950 ,0x05b57 ,0x056a0 ,//1960-1969
156
+ 0x096d0 ,0x04dd5 ,0x04ad0 ,0x0a4d0 ,0x0d4d4 ,0x0d250 ,0x0d558 ,0x0b540 ,0x0b6a0 ,0x195a6 ,//1970-1979
157
+ 0x095b0 ,0x049b0 ,0x0a974 ,0x0a4b0 ,0x0b27a ,0x06a50 ,0x06d40 ,0x0af46 ,0x0ab60 ,0x09570 ,//1980-1989
158
+ 0x04af5 ,0x04970 ,0x064b0 ,0x074a3 ,0x0ea50 ,0x06b58 ,0x055c0 ,0x0ab60 ,0x096d5 ,0x092e0 ,//1990-1999
159
+ 0x0c960 ,0x0d954 ,0x0d4a0 ,0x0da50 ,0x07552 ,0x056a0 ,0x0abb7 ,0x025d0 ,0x092d0 ,0x0cab5 ,//2000-2009
160
+ 0x0a950 ,0x0b4a0 ,0x0baa4 ,0x0ad50 ,0x055d9 ,0x04ba0 ,0x0a5b0 ,0x15176 ,0x052b0 ,0x0a930 ,//2010-2019
161
+ 0x07954 ,0x06aa0 ,0x0ad50 ,0x05b52 ,0x04b60 ,0x0a6e6 ,0x0a4e0 ,0x0d260 ,0x0ea65 ,0x0d530 ,//2020-2029
162
+ 0x05aa0 ,0x076a3 ,0x096d0 ,0x04afb ,0x04ad0 ,0x0a4d0 ,0x1d0b6 ,0x0d250 ,0x0d520 ,0x0dd45 ,//2030-2039
163
+ 0x0b5a0 ,0x056d0 ,0x055b2 ,0x049b0 ,0x0a577 ,0x0a4b0 ,0x0aa50 ,0x1b255 ,0x06d20 ,0x0ada0 ,//2040-2049
164
+ 0x14b63 ,0x09370 ,0x049f8 ,0x04970 ,0x064b0 ,0x168a6 ,0x0ea50 , 0x06b20 ,0x1a6c4 ,0x0aae0 ,//2050-2059
165
+ 0x0a2e0 ,0x0d2e3 ,0x0c960 ,0x0d557 ,0x0d4a0 ,0x0da50 ,0x05d55 ,0x056a0 ,0x0a6d0 ,0x055d4 ,//2060-2069
166
+ 0x052d0 ,0x0a9b8 ,0x0a950 ,0x0b4a0 ,0x0b6a6 ,0x0ad50 ,0x055a0 ,0x0aba4 ,0x0a5b0 ,0x052b0 ,//2070-2079
167
+ 0x0b273 ,0x06930 ,0x07337 ,0x06aa0 ,0x0ad50 ,0x14b55 ,0x04b60 ,0x0a570 ,0x054e4 ,0x0d160 ,//2080-2089
168
+ 0x0e968 ,0x0d520 ,0x0daa0 ,0x16aa6 ,0x056d0 ,0x04ae0 ,0x0a9d4 ,0x0a2d0 ,0x0d150 ,0x0f252 ,//2090-2099
169
+ 0x0d520
166
170
};
167
171
168
172
@@ -219,6 +223,7 @@ private static String getSolarTerm(int year, int month, int day) {
219
223
String [] solarTerm = SOLAR_TERMS .get (year );
220
224
String text = year + getString (month , day );
221
225
String solar = "" ;
226
+ assert solarTerm != null ;
222
227
for (String solarTermName : solarTerm ) {
223
228
if (solarTermName .contains (text )) {
224
229
solar = solarTermName .replace (text , "" );
@@ -269,6 +274,7 @@ private static String getSpecialFestival(int year, int month, int day) {
269
274
String [] specialFestivals = SPECIAL_FESTIVAL .get (year );
270
275
String text = year + getString (month , day );
271
276
String solar = "" ;
277
+ assert specialFestivals != null ;
272
278
for (String special : specialFestivals ) {
273
279
if (special .contains (text )) {
274
280
solar = special .replace (text , "" );
0 commit comments