Java 判断一个时间是否在另一个时间段内
程序员文章站
2024-03-12 11:30:20
需求:当时间在凌晨0点至0点5分之间程序不执行。
也就是实现判断当前时间点是否在00:00:00至00:...
需求:当时间在凌晨0点至0点5分之间程序不执行。
也就是实现判断当前时间点是否在00:00:00至00:05:00之间
方法:
java代码 :
/** * 判断时间是否在时间段内 * * @param date * 当前时间 yyyy-mm-dd hh:mm:ss * @param strdatebegin * 开始时间 00:00:00 * @param strdateend * 结束时间 00:05:00 * @return */ public static boolean isindate(date date, string strdatebegin, string strdateend) { simpledateformat sdf = new simpledateformat("yyyy-mm-dd hh:mm:ss"); string strdate = sdf.format(date); // 截取当前时间时分秒 int strdateh = integer.parseint(strdate.substring(11, 13)); int strdatem = integer.parseint(strdate.substring(14, 16)); int strdates = integer.parseint(strdate.substring(17, 19)); // 截取开始时间时分秒 int strdatebeginh = integer.parseint(strdatebegin.substring(0, 2)); int strdatebeginm = integer.parseint(strdatebegin.substring(3, 5)); int strdatebegins = integer.parseint(strdatebegin.substring(6, 8)); // 截取结束时间时分秒 int strdateendh = integer.parseint(strdateend.substring(0, 2)); int strdateendm = integer.parseint(strdateend.substring(3, 5)); int strdateends = integer.parseint(strdateend.substring(6, 8)); if ((strdateh >= strdatebeginh && strdateh <= strdateendh)) { // 当前时间小时数在开始时间和结束时间小时数之间 if (strdateh > strdatebeginh && strdateh < strdateendh) { return true; // 当前时间小时数等于开始时间小时数,分钟数在开始和结束之间 } else if (strdateh == strdatebeginh && strdatem >= strdatebeginm && strdatem <= strdateendm) { return true; // 当前时间小时数等于开始时间小时数,分钟数等于开始时间分钟数,秒数在开始和结束之间 } else if (strdateh == strdatebeginh && strdatem == strdatebeginm && strdates >= strdatebegins && strdates <= strdateends) { return true; } // 当前时间小时数大等于开始时间小时数,等于结束时间小时数,分钟数小等于结束时间分钟数 else if (strdateh >= strdatebeginh && strdateh == strdateendh && strdatem <= strdateendm) { return true; // 当前时间小时数大等于开始时间小时数,等于结束时间小时数,分钟数等于结束时间分钟数,秒数小等于结束时间秒数 } else if (strdateh >= strdatebeginh && strdateh == strdateendh && strdatem == strdateendm && strdates <= strdateends) { return true; } else { return false; } } else { return false; } }
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!