/* * 从键盘输入一个日期,格式为yyyy-M-d 要求计算该日期与1949年10月1日距离多少天 例如: 用户输入了:1949-10-2 程序输出:1 用户输入了:1949-11-1 程序输出:31*/import java.util.Arrays;import java.util.Scanner;public class Demo09 { static int[][] days = { // 定义平年days[0]和闰年days[1] {0,31,28,31,30,31,30,31,31,30,31,30,31}, {0,31,29,31,30,31,30,31,31,30,31,30,31}}; // 字符串转换 整数 public static int[] conversion(String s) { String[] ss = s.split("\\-"); int[] t = new int[3]; t[0] = Integer.parseInt(ss[0]); t[1] = Integer.parseInt(ss[1]); t[2] = Integer.parseInt(ss[2]); return t; } // 计算任意一年内的总天数 (是365还是366) public static int calcDay(int y,int m,int d){ int sum = d; // 每一年的总天数 (初始化为最后一个月的天数) int i = 0; // 平年下标为 0 if((y%4==0&&y%100!=0)||(y%400==0)) i = 1; // 闰年下标为 1 for(int j=0;jn[0]){ // 日期内容交换 for(int i=0;i
运行结果:
输入日期格式为:(1949-10-2)输入第一个日期:1949-10-2输入第二个日期:1949-11-21949-10-2 到 1949-11-2距离31天