src/org/nutz/lang/Times.java
public static int D1970(int yy, int MM, int dd) {
        // 转换成相对公元元年的年份
        // 如果给的年份小于 100，那么就认为是从 1970 开始算的年份
        int year = (yy < 100 ? yy + 1970 : yy);
        // 得到今年之前的基本天数
        int day = (year - 1970) * 365;
        // 补上闰年天数
        day += countLeapYear(year) - countLeapYear(1970);
        // 计算今年本月之前的月份
        int mi = Math.min(MM - 1, 11);
        boolean isLeapYear = leapYear(yy);
        for (int i = 0; i < mi; i++) {
            day += _MDs[i];
        }
        // 考虑今年是闰年的情况
        if (isLeapYear && MM > 2) {
            day++;
        }
        // 最后加上天数
        day += Math.min(dd, _MDs[mi]) - 1;

        // 如果是闰年且本月是 2 月
        if (isLeapYear && dd == 29) {
            day++;
        }

        // 如果是闰年并且过了二月
        return day;
    }
public static int D1970(int yy, int MM, int dd) {
        // 转换成相对公元元年的年份
        // 如果给的年份小于 100，那么就认为是从 1970 开始算的年份
        int year = (yy < 100 ? yy + 1970 : yy);
        // 得到今年之前的基本天数
        int day = (year - 1970) * 365;
        // 补上闰年天数
        day += countLeapYear(year) - countLeapYear(1970);
        // 计算今年本月之前的月份
        int mi = Math.min(MM - 1, 11);
        boolean isLeapYear = leapYear(yy);
        for (int i = 0; i < mi; i++) {
            day += _MDs[i];
        }
        // 考虑今年是闰年的情况
        if (isLeapYear && MM > 2) {
            day++;
        }
        // 最后加上天数
        day += Math.min(dd, _MDs[mi]) - 1;

        // 如果是闰年且本月是 2 月
        if (isLeapYear && dd == 29) {
            day++;
        }

        // 如果是闰年并且过了二月
        return day;
    }
public static int D1970 ( int yy , int MM , int dd ) { // 转换成相对公元元年的年份
 // 如果给的年份小于 100，那么就认为是从 1970 开始算的年份
 int year = ( yy < 100 ? yy + 1970 : yy ) ; // 得到今年之前的基本天数
 int day = ( year - 1970 ) * 365 ; // 补上闰年天数
 day += countLeapYear ( year ) - countLeapYear ( 1970 ) ; // 计算今年本月之前的月份
 int mi = Math . min ( MM - 1 , 11 ) ; boolean isLeapYear = leapYear ( yy ) ; for ( int i = 0 ; i < mi ; i ++ ) { day += _MDs [ i ] ; } // 考虑今年是闰年的情况
 if ( isLeapYear && MM > 2 ) { day ++ ; } // 最后加上天数
 day += Math . min ( dd , _MDs [ mi ] ) - 1 ; // 如果是闰年且本月是 2 月
 if ( isLeapYear && dd == 29 ) { day ++ ; } // 如果是闰年并且过了二月
 return day ; }
计算一个给定日期，距离 1970 年 1 月 1 日有多少天

@param yy
年，比如 1999，或者 43
@param MM
月，一月为 1，十二月为 12
@param dd
日，每月一号为 1
@return 距离 1970 年 1 月 1 日的天数
计算一个给定日期，距离 1970 年 1 月 1 日有多少天