2008-12-31 24:00:00 需要改成 2009-1-1 00:00:00 
判断小时是否为24 是就天数+1(小时归0) 同时如果天数是当前月份的最后一天 月份也要+1
同理 一直加到年 感觉 好麻烦 -_-!
闰年比较好判断 按照下面代码的算法package csdn.kao331431214.number4;import java.util.Scanner;public class Nian {
    public static void main(String[] args) {
        int nian;
        String str = "y";        Scanner scan = new Scanner(System.in);
        Scanner scan1 = new Scanner(System.in);        while(str.equalsIgnoreCase("y")){
            System.out.println("请输入年份:");
            nian = scan.nextInt();            System.out.println("你输入的年份是:" + nian);            if(nian > 1582){
                if(nian % 4 == 0){
                    if((nian % 100 == 0) && (nian % 400 != 0)){
                        System.out.println("不是闰年");
                    }else{
                        System.out.println(nian + "年是闰年");
                    }
                }else{
                    System.out.println(nian + "年不是闰年");
                }
            }else{
                System.out.println("年份过小,1582年后才有阳历");
            }
            
            System.out.println("继续吗(Y/N)?");
            str = scan1.nextLine();
        }
    }
}润年的二月份跟平年的二月分 在闰年判断出来后就容易呢呵呵

解决方案 »

  1.   


    /**
    *date 时间 day 天 
    *
    *
    */
     在 原有的 时间 基础 上 加减 日期  day 1 就日的基础上+1  +31的话就跳到 林外一个月去是否是 闰年不 需要你来 
    判断就像 数据库 2000  里面 的 dateadd 一样
    public  String adddate(String date, int day) {
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date dt = sdf.parse(date, new ParsePosition(0));
    Calendar rightNow = Calendar.getInstance(); rightNow.setTime(dt);
    rightNow.add(Calendar.DATE, day);// 你要加减的日期
    Date dt1 = rightNow.getTime();
    return sdf.format(dt1); }