Angelo Lee's Blog
This is my kingdom .If i don't fight for it ,who will ?

判断是否为闰年的方法

開始 ----除4  --- 不等於0                      ---> 不是閏年
          |
         |
        等於0 --- 除100 --- 不等於0            ---> 是閏年
                     |
                  |
                  等於0 --- 除400 --- 不等於0  ---> 不是閏年
                                 |
                             |
                            等於0             ---> 是閏年
俗话:四年一潤,百年不潤,四百年潤。
地球公轉一周是 365.2422 天 
儒略曆只有四年一潤會造成每四百年多三天 
所以 1582 年定的 Gregorian Calendar 才再增加百年不潤四百年潤的規則 
這樣每三千多年才會誤差一天 

public static boolean isLeapYear(int year) {
    return year >= gregorianCutoverYear ?
        ((year%4 == 0) && ((year%100 != 0) || (year%400 == 0))) : 
        (year%4 == 0); 
}
posted on 2008-12-05 13:30  Angelo Lee  阅读(257)  评论(0编辑  收藏  举报