例如:01:00 - 19:00 这个简单、
有个问题很头疼,考虑跨天问题。例如:01:40 - 01:00.
求一个灵活性好的例子。例子给三个参数,第一个参数当前时间,第二个参数开始时间,第三个参数结束时间。然后返回真假、
大神跪求了!
------解决方案--------------------------------------------------------
可以考虑先判断后面那个是否小于前面个时间,在进行是否多加24小时的处理
------解决方案--------------------------------------------------------
写了个js的,Java同理
- JScript code
function test(curTime,startTime,endTime){ if(endTime>startTime){ return (curTime>startTime && curTime<endTime); }else{ return !(curTime>endTime && curTime<startTime); }}alert(test("10:12","02:00","19:00"));alert(test("10:12","20:00","19:00"));alert(test("10:12","14:00","01:00"));
------解决方案--------------------------------------------------------
转换成格林威治时间试试
------解决方案--------------------------------------------------------
先判断结束时间是否小于开始时间,如果小于,先把结束时间加上24小时,然后再判断当前时间是否在区间里
for example
- Java code
public boolean between(String curentTime, String startTime, String endTime) { if (startTime.compareTo(endTime) > 0) {如果开始时间大于结束时间,结束时间+24 endTime = String.format("%d%s", Integer.valueOf(endTime.substring(0,2))+24, endTime.substring(2)); } return (currentTime.compareTo(startTime) >= 0 && currentTime.compareTo(endTime) <= 0);}