日期转换

输入某年某月某日,判断这一天是这一年的第几天?

public static int theDayOfYear(int year,int month,int day){
        int sum=0;
        switch(month){//判断某月份前的总天数
             case 1: sum=0 ;break;
             case 2: sum=31;break;
             case 3: sum=59 ;break;
             case 4: sum=90;break;
             case 5: sum=120 ;break;
             case 6: sum=151;break;
             case 7: sum=181 ;break;
             case 8: sum=212;break;
             case 9: sum=243 ;break;
             case 10: sum=273;break;
             case 11: sum=304 ;break;
             case 12: sum=334;break;
        }
        sum=sum+day;
        if(year%400==0 ||(year %4==0 &&year %100==0)){
            if(month==2){
                sum=sum+1;
            }
        }
        return sum;
    }
    public static int theDayOfYear1(int year,int month,int day){
        Calendar c=Calendar.getInstance();
        c.set(Calendar.YEAR, year);
        c.set(Calendar.MONTH,month-1 );
        c.set(Calendar.DAY_OF_MONTH, day);
        return c.get(Calendar.DAY_OF_YEAR);
    }
    public static void main(String[] args) {
        int d=theDayOfYear(2013, 6, 25);
        int d1=theDayOfYear1(2013, 6, 25);
        System.out.println(d);
        System.out.println(d1);
    }

 

posted @ 2013-06-25 14:11  意义非凡  阅读(143)  评论(0)    收藏  举报