背景
有时候会用到判断当前时间是否在时间段以内。直接上代码
1、直接比较时间的字符串大小
private fun isTimeRange(currentTime: Long): Boolean {
val nowDate = Date(currentTime)
val simpleDate = SimpleDateFormat("HH:MM", Locale.CHINA)
val nowTime = simpleDate.format(nowDate)
val startTime = simpleDate.format(simpleDate.parse("7:00"))
val endTime = simpleDate.format(simpleDate.parse(22:00))
if (nowTime in startTime..endTime) {
return true
}
return false
}
2、通过Calendar
private boolean isTimeRange()throws ParseException {
SimpleDateFormat df = new SimpleDateFormat("HH:mm");
Date now = df.parse(df.format(new Date()));
Date begin = df.parse("7:00");
Date end = df.parse("22:00");
Calendar nowTime = Calendar.getInstance();
nowTime.setTime(now);
Calendar beginTime = Calendar.getInstance();
beginTime.setTime(begin);
Calendar endTime = Calendar.getInstance();
endTime.setTime(end);
if (nowTime.before(endTime) && nowTime.after(beginTime)) {
return true;
} else {
return false;
}
}
亲测有效
PS:越恐惧就越难战胜自己