可以说我有很长currentMillis和长oldMillis。 在两个时间戳之间的差别是非常微小的,总是不到1秒。
如果我想知道在milleseconds时间戳之间的差别,我可以做到以下几点:
长差= currentmillis-oldmillis;
如果我想差转换为秒,我可以由1000划分它。然而,如果以毫秒为差小于1000毫秒(<1秒),将其除以1000将产生0。
我怎样才能获得两个时间戳之间的差值,如果差值小于第二? 例如,如果该差为500毫秒,所期望的输出是0.5秒。
使用浮点/双,而不是长总是返回由于某种原因,我不明白0.0。
我的代码:
private long oldmillis = 0, difference = 0;
private long calculateDifference()
{
long currentMillis = System.currentTimeMillis();
if (oldMillis == 0) oldMillis = currentMillis;
difference = currentMillis - oldMillis;
oldMillis = currentMillis;
return difference;
}
该方法calculateDifference与小的随机时间间隔随机地调用。