当前位置: 代码迷 >> Java相关 >> Java程序设计之算出一年第几多天
  详细解决方案

Java程序设计之算出一年第几多天

热度:30   发布时间:2016-04-22 19:51:48.0
Java程序设计之算出一年第多少天

  可以直接拷贝运行。

package year;import java.util.Scanner;public class year {    public static void main(String[] args) {        // TODO Auto-generated method stub        year y = new year();        y.fun();    }        public void fun(){        String str = shuru();        int year = Integer.parseInt(str.split(" ")[0]);        int month = Integer.parseInt(str.split(" ")[1]);        int day = Integer.parseInt(str.split(" ")[2]);        jisuan(year,month,day);    }        private String shuru(){        System.out.print("输入年月日中间以空格间隔:");        Scanner s = new Scanner(System.in);        return s.nextLine();    }        private void jisuan(int year, int month,int day){        int i = 0;        int j = 0;        //是闰年        if(year%400 == 0||year%4==0&&year%100!=0){            switch(month){            case 12: i+=31;            case 11: i+=30;            case 10: i+=31;            case 9: i+=30;            case 8: i+=31;            case 7: i+=31;            case 6: i+=30;            case 5: i+=31;            case 4: i+=30;            case 3: i+=31;            case 2: i+=28;            case 1: i+=31;            }            if(month == 1||month == 3||month == 5||month == 7||month == 8||month == 10||month == 12){                j = 31 - day;                System.out.println(i-j);            }else if(month == 2){                j = 28 - day;                System.out.println(i-j);            }else{                j = 30 - day;                System.out.println(i - j);            }        }else{            switch(month){            case 12: i+=31;            case 11: i+=30;            case 10: i+=31;            case 9: i+=30;            case 8: i+=31;            case 7: i+=31;            case 6: i+=30;            case 5: i+=31;            case 4: i+=30;            case 3: i+=31;            case 2: i+=29;            case 1: i+=31;            }            if(month == 1||month == 3||month == 5||month == 7||month == 8||month == 10||month == 12){                j = 31 - day;                System.out.println(i-j);            }else if(month == 2){                j = 28 - day;                System.out.println(i-j);            }else{                j = 30 - day;                System.out.println(i - j);            }        }    }}

  比如输入:1994 3 28

  输出:88

  1994年的第88天。

  相关解决方案