diff --git a/src/main/java/com/nlf/calendar/Lunar.java b/src/main/java/com/nlf/calendar/Lunar.java index 9cfc2a7..51db4ea 100644 --- a/src/main/java/com/nlf/calendar/Lunar.java +++ b/src/main/java/com/nlf/calendar/Lunar.java @@ -263,8 +263,9 @@ public class Lunar{ } private double dtCalc(double y) { - double y0 = DT_AT[DT_AT.length - 2]; - double t0 = DT_AT[DT_AT.length - 1]; + int size = DT_AT.length; + double y0 = DT_AT[size - 2]; + double t0 = DT_AT[size - 1]; if (y >= y0) { double jsd = 31; if (y > y0 + 100) { @@ -275,7 +276,7 @@ public class Lunar{ return v - dv * (y0 + 100 - y) / 100; } int i; - for (i = 0; i < DT_AT.length; i += 5) { + for (i = 0; i < size; i += 5) { if (y < DT_AT[i + 5]) { break; } @@ -326,15 +327,16 @@ public class Lunar{ } private double calcJieQi(double jd) { + int size = QI_KB.length; double d = 0; int pc = 7; jd += 2451545; - double f1 = QI_KB[0] - pc, f2 = QI_KB[QI_KB.length - 1] - pc, f3 = 2436935; + double f1 = QI_KB[0] - pc, f2 = QI_KB[size - 1] - pc, f3 = 2436935; if (jd < f1 || jd >= f3) { d = Math.floor(qiHigh(Math.floor((jd + pc - 2451259) * 24D / 365.2422) * Math.PI / 12) + 0.5); }else if (jd >= f1 && jd < f2) { int i = 0; - for (; i < QI_KB.length; i += 2) { + for (; i < size; i += 2) { if (jd + pc < QI_KB[i + 2]) { break; } @@ -388,7 +390,7 @@ public class Lunar{ int size = JIE_QI.length; for (int i=0;i