如何计算java中的秒数?
how to count the seconds in java?
我正在尝试了解如何跟踪创建对象的秒数。
我正在使用的程序模拟杂货店。
有些食物在一定时间后会变质,这都是在 item
class 的子 class 中完成的,称为 groceryItem
.不需要打印秒数,但会使用 currentTime
字段进行跟踪,我不太明白如何准确计算秒数。
我可能正在考虑使用 Java.util.Timer 或 Java.util.Date 库,但我不完全了解如何使用它们来解决我的问题。
我对java不是很了解,但如有任何帮助,我们将不胜感激。
您可以使用自纪元以来毫秒数的 long
值,或 java.util.Date
对象(内部使用自纪元以来毫秒数的 long
值,但更容易 display/debug).
// Using millis
class MyObj {
private final long createdMillis = System.currentTimeMillis();
public int getAgeInSeconds() {
long nowMillis = System.currentTimeMillis();
return (int)((nowMillis - this.createdMillis) / 1000);
}
}
// Using Date
class MyObj {
private final Date createdDate = new java.util.Date();
public int getAgeInSeconds() {
java.util.Date now = new java.util.Date();
return (int)((now.getTime() - this.createdDate.getTime()) / 1000);
}
}
创建对象调用时。
Date startDate = new Date();
完成后打电话;
Date endDate = new Date();
经过的秒数是:
int numSeconds = (int)((endDate.getTime() - startDate.getTime()) / 1000);
我正在尝试了解如何跟踪创建对象的秒数。
我正在使用的程序模拟杂货店。
有些食物在一定时间后会变质,这都是在 item
class 的子 class 中完成的,称为 groceryItem
.不需要打印秒数,但会使用 currentTime
字段进行跟踪,我不太明白如何准确计算秒数。
我可能正在考虑使用 Java.util.Timer 或 Java.util.Date 库,但我不完全了解如何使用它们来解决我的问题。
我对java不是很了解,但如有任何帮助,我们将不胜感激。
您可以使用自纪元以来毫秒数的 long
值,或 java.util.Date
对象(内部使用自纪元以来毫秒数的 long
值,但更容易 display/debug).
// Using millis
class MyObj {
private final long createdMillis = System.currentTimeMillis();
public int getAgeInSeconds() {
long nowMillis = System.currentTimeMillis();
return (int)((nowMillis - this.createdMillis) / 1000);
}
}
// Using Date
class MyObj {
private final Date createdDate = new java.util.Date();
public int getAgeInSeconds() {
java.util.Date now = new java.util.Date();
return (int)((now.getTime() - this.createdDate.getTime()) / 1000);
}
}
创建对象调用时。
Date startDate = new Date();
完成后打电话;
Date endDate = new Date();
经过的秒数是:
int numSeconds = (int)((endDate.getTime() - startDate.getTime()) / 1000);