我想花費幾個小時,我使用SimpleDateFormat解析並確定當前時間是否在兩組小時之間。基本上,給定一個地方的時間,我試圖確定它是否目前開放我們的封閉。確定時間是否在兩個其他時間之間
我通過執行以下操作獲取當前時間:
SimpleDateFormat sdf2 = new SimpleDateFormat("kk:mm");
Calendar now = Calendar.getInstance();
int hour = now.get(Calendar.HOUR);
int minute = now.get(Calendar.MINUTE);
String currentHour = Integer.toString(hour);
String currentMinute = Integer.toString(minute);
String timeNow = currentHour + ":" + currentMinute;
Date timeRightNow = sdf2.parse(timeNow);
於是,我決定timeRightNow
是否是打開和關閉時間之間,我做了以下內容:
if (timeOpen.before(timeRightNow) && timeClose.after(timeRightNow)) {
openStatus = "open!";
} else {
openStatus = "closed.";
}
兩個timeOpen
和timeClose
是通過使用sdf2
解析字符串來找到的,方法與找到timeRightNow
完全相同。
每次運行時,它都會將openStatus
設置爲「關閉」。即使當前時間在打開和關閉時間之間。任何人都可以用正確的方向指出我爲什麼會發生這種情況?
你可能有上午/下午的困境?用調試器跟蹤應該會揭示問題的根源。 –
或者簡單地輸出那些時間並看着它們。 –
你如何計算timeOpen和timeClose? – Peshal