泛微E8中判断时间在早上八点半到晚上六点半之间的值
在泛微E8中,用的是比较老旧的jdk版本-----jdk1.6
所以有一些新版本的方法,在jdk1.6是不被支持的,所以在编写接口的时候需要使用jdk1.6支持的方法
jdk1.6版本的判断方法
public Boolean checkFlag(String timeStr){
if (timeStr != null && !timeStr.isEmpty() && timeStr.contains(":")) {
String[] timeArr = timeStr.split(":");
if (timeArr.length != 2) {
// 时间格式不正确,返回false
return false;
}
try {
int ihour = Integer.parseInt(timeArr[0]);
int imin = Integer.parseInt(timeArr[1]);
if (ihour < 8 || (ihour == 8 && imin < 30)) {
// 时间早于8点30分,返回false
return false;
} else if (ihour > 18 || (ihour == 18 && imin > 30)) {
// 时间晚于18点30分,返回false
return false;
}
// 时间在8点30分到18点30分之间(包括这两个时间点)
return true;
} catch (NumberFormatException e) {
// 如果小时或分钟不是数字,返回false
return false;
}
}
// 时间字符串为空、格式不正确或其他情况,返回false
return false;
}
需要注意的是,在泛微前端传过来的时间是字符串格式的,所以需要明确时间格式之后再进行判断,这个方法是将小时和分钟通过转化成整数类型来进行判断的
可以新建一个class类,在main方法中调用这个checkFlag方法来测试是否能够正常判断时间