计算两个unix时间戳的时间差,并在Java中转换为分钟
我有两个UNIX时间戳,我想比较它们,然后以分钟为单位得出差异计算两个unix时间戳的时间差,并在Java中转换为分钟,java,unix,Java,Unix,我有两个UNIX时间戳,我想比较它们,然后以分钟为单位得出差异 例如,1418600222和1418602180,其中1418602180-1418600222在几分钟内给我一个答案。我试着用谷歌搜索它,但大多数结果都是在javascript中,我对它的理解相当有限。看看java.util.concurrent.TimeUnit java.util.concurrent.TimeUnit#SECONDS.toMinutes() 看看java.util.concurrent.TimeUnit j
例如,
1418600222和1418602180
,其中1418602180-1418600222
在几分钟内给我一个答案。我试着用谷歌搜索它,但大多数结果都是在javascript
中,我对它的理解相当有限。看看java.util.concurrent.TimeUnit
java.util.concurrent.TimeUnit#SECONDS.toMinutes()
看看java.util.concurrent.TimeUnit
java.util.concurrent.TimeUnit#SECONDS.toMinutes()
试试这个
public class tets {
public static void main(String args[])
{
long timeStamp= 1418602180 - 1418600222;
java.util.Date time=new java.util.Date(timeStamp*1000);
System.out.println(time.getMinutes());
}
}
输出2
更新
在我前面的示例中,我使用了不推荐使用的方法。您可以使用joda时间,如下所示
LocalDateTime d1=new LocalDateTime(new Date(1418602180 *1000));
LocalDateTime d2=new LocalDateTime(new Date(1418600222*1000));
System.out.println(d1);
System.out.println(d2);
int minutesDiff=Minutes.minutesBetween(d2, d1).getMinutes();
System.out.println(minutesDiff);
试试这个
public class tets {
public static void main(String args[])
{
long timeStamp= 1418602180 - 1418600222;
java.util.Date time=new java.util.Date(timeStamp*1000);
System.out.println(time.getMinutes());
}
}
输出2
更新
在我前面的示例中,我使用了不推荐使用的方法。您可以使用joda时间,如下所示
LocalDateTime d1=new LocalDateTime(new Date(1418602180 *1000));
LocalDateTime d2=new LocalDateTime(new Date(1418600222*1000));
System.out.println(d1);
System.out.println(d2);
int minutesDiff=Minutes.minutesBetween(d2, d1).getMinutes();
System.out.println(minutesDiff);
Unix时间戳(也称为历元时间)只是从1970-01-01的00:00:00开始的秒数
假设它是一个数字,您可以像计算任何其他数字一样计算差值。您将在几秒钟内得到差异。将其除以60,以分钟为单位得出差值
你的例子是:
1418602180 is 2014-12-15 00:09:40 GMT
1418600222 is 2014-12-14 23:37:02 GMT
difference is 1418602180 - 1418600222 = 1958 seconds
1958 / 60 = 32.6333 minutes
Unix时间戳(也称为历元时间)只是从1970-01-01的00:00:00开始的秒数
假设它是一个数字,您可以像计算任何其他数字一样计算差值。您将在几秒钟内得到差异。将其除以60,以分钟为单位得出差值
你的例子是:
1418602180 is 2014-12-15 00:09:40 GMT
1418600222 is 2014-12-14 23:37:02 GMT
difference is 1418602180 - 1418600222 = 1958 seconds
1958 / 60 = 32.6333 minutes
仅供参考,Java和JavaScript完全不同。@Manu是的,我知道,但我会说有些时候逻辑可以非常相似老实说,在Java 8或JodaTimeJust中使用新的日期/时间API。仅供参考,Java和JavaScript完全不同。@Manu是的,我知道,但我会说有些时候逻辑可以非常相似老实说,在Java 8或JodaTimeI中使用新的日期/时间API我怀疑,如果差异大于59分钟,将给出准确的结果我怀疑,如果差异大于59分钟,将给出准确的结果我怀疑,如果差异大于59分钟,根据问题的内容,将给出最简单的结果。如果OP想要做更多实质性的事情,我会使用日期/时间API或JodaTimeHank!只需要这样一个简单的解决方案:-)干杯+1为最简单的基于什么的问题。如果OP想要做更多实质性的事情,我会使用日期/时间API或JodaTimeHank!只需要这样一个简单的解决方案:-)干杯