JAVA 表示时间区间的字符串的比较

需要对获得的诸如08:30-11:00这样的字符串进行合法性验证,判定表示的时间区间是否合法,以及对高峰期时间的区间是否

在总的时间区间内部进行判断。

 1        String[] zone1="08:30-11:00".split("-");
 2        String[] zone2="13:00-17:00".split("-");
 3        String[] actzone="9:00-11:00".split("-");
 4        
 5        DateFormat df = new SimpleDateFormat("hh:mm");
 6        
 7        try{
 8        long mintime=df.parse("00:00").getTime();
 9        long maxtime=df.parse("24:00").getTime();
10        long[] time1={df.parse(zone1[0]).getTime(),df.parse(zone1[1]).getTime()};
11        long[] time2={df.parse(zone2[0]).getTime(),df.parse(zone2[1]).getTime()};
12        long[] acttime={df.parse(actzone[0]).getTime(),df.parse(actzone[1]).getTime()};
13        
14        if(time1[0]>=time1[1]||time1[0]<=mintime||time1[1]>=maxtime)
15            System.out.println("操作区间一不合法");
16        if(time2[0]>=time2[1]||time2[0]<=mintime||time2[1]>=maxtime)
17            System.out.println("操作区间二不合法");
18        if(acttime[0]>=acttime[1]||acttime[0]<=mintime||acttime[1]>=maxtime)
19            System.out.println("高峰期区间不合法");
20        
21        boolean ifLegal=false;
22        
23        if(acttime[0]>=time1[0]&&acttime[1]<=time1[1])
24            ifLegal=true;
25        if(acttime[0]>=time2[0]&&acttime[1]<=time2[1])
26            ifLegal=true;
27        
28        if(ifLegal)
29            System.out.println("info:高峰期区间合法");
30        else
31            System.out.println("warn:高峰期区间不合法");
32        
33        }catch(Exception e){
34            e.printStackTrace();
35        }

 

posted @ 2013-03-27 18:51  艾布拉布斯  阅读(985)  评论(0编辑  收藏  举报