| | |
| | | import java.nio.charset.StandardCharsets; |
| | | import java.security.MessageDigest; |
| | | import java.security.NoSuchAlgorithmException; |
| | | import java.time.LocalTime; |
| | | |
| | | /** |
| | | * MD5加密工具类 |
| | |
| | | String inputHash = encrypt(inputPassword); |
| | | return inputHash.equals(storedHash); |
| | | } |
| | | |
| | | /** |
| | | * 判断当前时间是否在指定时间段内(字符串参数) |
| | | * @param startTimeStr 开始时间,格式:"HH:mm" 或 "HH:mm:ss" |
| | | * @param endTimeStr 结束时间,格式:"HH:mm" 或 "HH:mm:ss" |
| | | * @return 如果在时间段内返回true,否则返回false |
| | | */ |
| | | public static boolean isCurrentTimeInRange(String startTimeStr, String endTimeStr) { |
| | | LocalTime now = LocalTime.now(); |
| | | LocalTime startTime = LocalTime.parse(fixTimeFormat(startTimeStr)); |
| | | LocalTime endTime = LocalTime.parse(fixTimeFormat(endTimeStr)); |
| | | |
| | | return !now.isBefore(startTime) && now.isBefore(endTime); |
| | | } |
| | | private static String fixTimeFormat(String timeStr) { |
| | | // 如果只有小时和分钟,添加秒部分 |
| | | if (timeStr.length() == 5 && timeStr.contains(":")) { |
| | | return timeStr + ":00"; |
| | | } |
| | | return timeStr; |
| | | } |
| | | |
| | | public static void main(String[] args) { |
| | | boolean currentTimeInRange = isCurrentTimeInRange("09:00", "16:50"); |
| | | System.out.println("Current time is in range: " + currentTimeInRange); |
| | | } |
| | | } |