Scanner read=new Scanner(System.in);
System.out.println("输入一个日期的年份:");
int yearOne=read.nextInt( );
System.out.println("输入该年的月份:");
int monthOne=read.nextInt( );
System.out.println("输入该月份的日期:");
int dayOne=read.nextInt( );
Calendar calendar=Calendar.getInstance(); //初始化日历对象。
for(int i=0;i<3;i++){
calendar.set(yearOne,monthOne+i,dayOne); // 将calendar的时间设置为yearOne年monthOne月dayOne日
long timeOne=calendar.getTimeInMillis(); // calendar表示的时间转换成毫秒。
long 相隔天数=Math.abs(timeOne)/(1000*3600*24); // 计算两个日期相隔天数
System.out.printf("%d年%d月%d日和起始日期相隔%d天\n",
yearOne,monthOne+i,dayOne, 相隔天数);
}
输入: 输出:
1969 12 1 0
1970 1 1 31
1970 2 1 59
为什么不是31+31=62天??
System.out.println("输入一个日期的年份:");
int yearOne=read.nextInt( );
System.out.println("输入该年的月份:");
int monthOne=read.nextInt( );
System.out.println("输入该月份的日期:");
int dayOne=read.nextInt( );
Calendar calendar=Calendar.getInstance(); //初始化日历对象。
for(int i=0;i<3;i++){
calendar.set(yearOne,monthOne+i,dayOne); // 将calendar的时间设置为yearOne年monthOne月dayOne日
long timeOne=calendar.getTimeInMillis(); // calendar表示的时间转换成毫秒。
long 相隔天数=Math.abs(timeOne)/(1000*3600*24); // 计算两个日期相隔天数
System.out.printf("%d年%d月%d日和起始日期相隔%d天\n",
yearOne,monthOne+i,dayOne, 相隔天数);
}
输入: 输出:
1969 12 1 0
1970 1 1 31
1970 2 1 59
为什么不是31+31=62天??
1970.1.1
1970.2.1
1970.3.1所以是0 31 59注意月份是0-11