Java unix时间戳 移除秒毫秒部分

时间:2022-09-19 02:25:06

方法一:

public static Long getCurrentTime() {
//毫秒时间转成分钟
double doubleTime = (Math.floor(System.currentTimeMillis() / 60000L));
//往下取整 1.9=> 1.0
long floorValue = new Double(doubleTime).longValue();
return floorValue * 60;
}

方法二:

 public static Long process(long timestamp) {
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(timestamp);
calendar.set(Calendar.SECOND, 0);
return calendar.getTimeInMillis() / 1000;
}

效率对比测试:

       int num = 10000000;
for (int j = 0; j < 10; j++) {
long start = System.currentTimeMillis();
for (int i = 0; i < num; i++) {
getCurrentTime();
}
long end = System.currentTimeMillis();
System.out.println("getCurrentTime第" + j + "次:" + (end - start));

start = System.currentTimeMillis();
for (int i = 0; i < num; i++) {
process(start);
}
end = System.currentTimeMillis();
System.out.println("process第" + j + "次:" + (end - start));
}

对比结果:

getCurrentTime第0次:238
process0次:4431
getCurrentTime第1次:238
process1次:3400
getCurrentTime第2次:214
process2次:3307
getCurrentTime第3次:214
process3次:3310
getCurrentTime第4次:217
process4次:3278
getCurrentTime第5次:216
process5次:3286
getCurrentTime第6次:215
process6次:3332
getCurrentTime第7次:214
process7次:3307
getCurrentTime第8次:214
process8次:3398
getCurrentTime第9次:222
process9次:3389

作者:jiankunking 出处:http://blog.csdn.net/jiankunking