编译问题:
java:25: 错误: 找不到符号
Date date2 = new Date(timeTwo);
^
符号: 变量 timeTwo
位置: 类 CompareDate
CompareDate.java:32: 错误: 找不到符号
long days= Math.abs(timeTwo-timeOne)/(1000*60*60*24);
^
符号: 变量 timeTwo
位置: 类 CompareDate
2 个错误
1. 源代码:
import java.util.*;
public class CompareDate
{
public static void main(String[] args)
{
Scanner scanner = new Scanner(System.in);
System.out.println("请输入第一个年,月,日数据");
System.out.print("输入年份");
short yearOne = scanner.nextShort();
System.out.print("输入月份");
byte monthOne = scanner.nextByte();
System.out.print("输入日期");
byte dayOne = scanner.nextByte();
System.out.println("输入第二个年,月,日数据");
System.out.print("输入年份");
short yearTwo = scanner.nextShort();
System.out.print("输入月份");
byte monthTwo = scanner.nextByte();
System.out.print("输入日期");
byte dayTwo = scanner.nextByte();
Calendar calendar = calendar.getInstance();
calendar.set(yearOne,monthOne-1,dayOne);
long timeOne = calendar.getTimeInMillis();
Date date1 = new Date(timeOne);
Date date2 = new Date(timeTwo);
if(date2.equals(date1))
System.out.println("两个日期的年、月、日完全相同");
else if(date2.after(date1))
System.out.println("您输入的第二个日期大于第一个日期");
else if(date2.before(date1))
System.out.println("您输入的第一个日期大于第二个日期");
long days= Math.abs(timeTwo-timeOne)/(1000*60*60*24);
System.out.println(yearOne+"年"+monthOne+"月"+dayOne+"日和"+yearTwo+"年"+monthTwo+"月"+dayTwo+"相隔"+days+"天");
}
}
这不是已经很清晰的告诉你了吗 , 第 25 行 和 32 行 不认识 timeTwo , 说明你这个变量没有定义啊
改成这样,你的timeTwo没有定义
Scanner scanner = new Scanner(System.in);
System.out.println("请输入第一个年,月,日数据");
System.out.print("输入年份");
short yearOne = scanner.nextShort();
System.out.print("输入月份");
byte monthOne = scanner.nextByte();
System.out.print("输入日期");
byte dayOne = scanner.nextByte();
System.out.println("输入第二个年,月,日数据");
System.out.print("输入年份");
short yearTwo = scanner.nextShort();
System.out.print("输入月份");
byte monthTwo = scanner.nextByte();
System.out.print("输入日期");
byte dayTwo = scanner.nextByte();
Calendar calendar = calendar.getInstance();
calendar.set(yearOne,monthOne-1,dayOne);
long timeOne = calendar.getTimeInMillis();
Date date1 = new Date(timeOne);
calendar.set(yearTwo,monthTwo-1,dayTwo);
long timeTwo = calendar.getTimeInMillis();
Date date2 = new Date(timeTwo);
if(date2.equals(date1))
System.out.println("两个日期的年、月、日完全相同");
else if(date2.after(date1))
System.out.println("您输入的第二个日期大于第一个日期");
else if(date2.before(date1))
System.out.println("您输入的第一个日期大于第二个日期");
long days= Math.abs(timeTwo-timeOne)/(1000*60*60*24);
System.out.println(yearOne+"年"+monthOne+"月"+dayOne+"日和"+yearTwo+"年"+monthTwo+"月"+dayTwo+"相隔"+days+"天");