1. 程式人生 > >java (給出年月日,計算該日是該年的第n天 )

java (給出年月日,計算該日是該年的第n天 )

package com.ywx.testdemo01;

import java.util.Scanner;

/**
 * 題目:給出年月日,計算該日是該年的第n天 
 * @author yangwenxue
 * date: 20150320
 */
class Order{
	public static void orderDate(String date){
		int dateSum=0;
		int year=Integer.valueOf(date.substring(0, 4));
		int month=Integer.valueOf(date.substring(5, 7));
		int day=Integer.valueOf(date.substring(8, 10));
		for(int i=1;i<month;i++){
			switch(i){
			case 1:
			case 3:
			case 5:
			case 7:
			case 8:
			case 10:
			case 12:
				dateSum+=31;
			break;
			case 4:
			case 6:
			case 9:
			case 11:
				dateSum+=30;
				break;
			case 2:
				if((year%4==0&&year%100!=0)||(year%400==0)){//判斷是否是閏年
					dateSum+=29;
				}else{
					dateSum+=28;
				}
			}
		}
		System.out.println("您輸入的日期是該年的第:"+(dateSum+day)+"天");
	}
}
public class DateOfyear {
	public static void main(String args[]){
		while(true){
			System.out.println("請輸入年月日(格式2015-02-11):");
			Scanner sc=new Scanner(System.in);
			String str=sc.nextLine();
			if(str.equals("exit")){
				System.out.println("系統退出!");
				break;
			}
			Order.orderDate(str);
		}
	}
}