[英]Fastest way to get hour of java.util.date?
從java.util.date
對象開始時:將小時部分作為integer
關於性能的最佳方法是什么?
我必須迭代幾百萬個日期,因此性能很重要。
通常我會得到如下的時間,但也許有更好的方法?
java.util.Date date;
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
int hours = calendar.get(Calendar.HOUR_OF_DAY);
在UTC中:
int hour = (int)(date.getTime() % 86400000) / 3600000;
要么
long hour = (date.getTime() % 86400000) / 3600000;
Date dateInput = new Date();
因為日歷從01.01.1970, 01:00
開始。 您必須對代碼進行進一步修改。使用以下方法可以避免這種情況,因此這將更快地執行。
dateInput.toInstant().atZone(ZoneId.systemDefault()).getHour();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.