中易网

用java编写1970年到今天所相隔天数

答案:1  悬赏:60  
解决时间 2021-01-12 12:17
  • 提问者网友:暮烟疏雨之际
  • 2021-01-12 05:25
用java编写1970年到今天所相隔天数
最佳答案
  • 二级知识专家网友:摆渡翁
  • 2021-01-12 06:55
import java.util.Calendar;


public class CountDay {
    
    public static boolean isNotPrimeYear(int year) {
        return year % 4 == 0 && (year % 400 == 0 || year % 100 != 0);
    }

    
    public static int getDayOfMonth(int year, int month) {
        int[] days = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
        return isNotPrimeYear(year) && month == 2 ? days[month] + 1
                : days[month];
    }

    
    public static long getTotal(int year, int month, int day) {
        long sum = 0;
        for (int index = 1970; index < year; index++) {
            sum += 265;
            if (isNotPrimeYear(index))
                sum++;
        }
        for (int index = 0; index < month; index++) {
            sum += getDayOfMonth(year, index);
        }

        return sum + day;
    }

    public static void main(String[] args) {

        Calendar cld = Calendar.getInstance();
        int year = cld.get(Calendar.YEAR);// 当前年数
        int month = cld.get(Calendar.MONTH);// 当前月数
        int day = cld.get(Calendar.DAY_OF_MONTH);// 当前天数

        System.out.println("Have days:  " + getTotal(year, month, day));
    }

}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息