为什么这个时间差总是0?基本上 start
和 end
总是有相同的值。我试过使用 Calendar
而不是 Date
。如果我使用 Duration
而不是 Date,我将无法比较 boolean temp = (diff>500);
。
private Date now=new Date();
private long start;
private long end;
public void ABC(){
start = now.getTime();
...
...
...
...
end = now.getTime();
long diff = end - start;
boolean temp = (diff>500);
System.out.println(diff); //This always outputs 0, basically start and end have same value always
}
最佳答案
因为是同一天。 now = new Date()
将日期设置为当前日期。 .getTime()
只是将日期转换为 long
。
据我了解,您想获取这两个变量的当前日期,因此您应该改用:
start = new Date().getTime();
end = new Date().getTime();
关于java - 为什么我的时差总是为零?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47388959/