⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chectime.java

📁 日期类 实现日期 时间的类
💻 JAVA
字号:
package checdateapi;import java.util.StringTokenizer;public class CHECTime { public  final static int   FLAG_SECOND=1;public   final static int   FLAG_MINUTE=2;public   final static int   FLAG_HOUR=3;public   final static int   FLAG_MICROSECOND=0;  int  hour;   int minute;   int second;   int microSecond;    public CHECTime() {      hour=0;      minute=0;      second=0;      microSecond=0;     // judgeIllegeValue();    }    public CHECTime(int h,int m,int s) {      hour=h;      minute=m;      second=s;      microSecond=0;    judgeIllegeValue();    }    public CHECTime(int h,int m,int s,int ms) {      hour=h;      minute=m;      second=s;      microSecond=ms;      judgeIllegeValue();    }    public  void  setHour(int h){      hour=h;      judgeIllegeValue();    }    public int getHour(){      return hour;//judgeIllegeValue();    }    public  void  setMinute(int m){      minute=m;      judgeIllegeValue();    }    public int getMinute(){      return minute; //judgeIllegeValue();    }    public  void  setSecond(int s){      second=s;      judgeIllegeValue();    }    public int getSecond(){      return second;   // judgeIllegeValue();    }    public  void  setMicroSecond(int ms){      microSecond=ms;    }    public int getMicroSecond(){      return microSecond;    }   public void setTime(CHECTime ct){     hour=ct.getHour();     minute=ct.getMinute();     second=ct.getSecond();     microSecond=ct.getMicroSecond();   }   public boolean equal(CHECTime t){    // return getStamp()==t.getStamp() ?true : false;    if((getStamp()==t.getStamp() ) && (microSecond==t.getMicroSecond())) return true;    return false;   }/*   public boolean equal(CHECTime ct){     boolean b=false;     if(hour==ct.getHour()  &&        minute==ct.getMinute() &&        second==ct.getSecond() &&        microSecond==ct.getMicroSecond()        )     {       b=true;     }     return b;   }  */   public  String toString(){         String rtString;         if (hour<10)  {           rtString="0"+Integer.toString(hour);         }         else{           rtString=Integer.toString(hour);         }         if (minute<10)  {           rtString=rtString+":0"+ Integer.toString(minute);         }         else{           rtString=rtString+":" + Integer.toString(minute);         }         if (second<10)  {           rtString=rtString+":0"+ Integer.toString(second);         }         else{           rtString=rtString+":" + Integer.toString(second);         }     if(microSecond>0)     {       if(microSecond>99) rtString=rtString + "." + Integer.toString(microSecond);        else if (microSecond>10)    rtString=rtString + ".0" + Integer.toString(microSecond);        else   rtString=rtString + ".00" + Integer.toString(microSecond);     }       return  rtString;    }   public  String   toStringMicroSecond()   {     String rtString;     if (hour<10)  {       rtString="0"+Integer.toString(hour);     }     else{       rtString=Integer.toString(hour);     }     if (minute<10)  {       rtString=rtString+":0"+ Integer.toString(minute);     }     else{       rtString=rtString+":" + Integer.toString(minute);     }     if (second<10)  {       rtString=rtString+":0"+ Integer.toString(second);     }     else{       rtString=rtString+":" + Integer.toString(second);     }    rtString= rtString+"."+ Integer.toString(microSecond);      return  rtString;   }    public  String toString(String space){         String rtString;         if (hour<10)  {           rtString="0"+Integer.toString(hour);         }         else{           rtString=Integer.toString(hour);         }         if (minute<10)  {           rtString=rtString+":0"+ Integer.toString(minute);         }         else{           rtString=rtString+":" + Integer.toString(minute);         }         if (second<10)  {           rtString=rtString+":0"+ Integer.toString(second);         }         else{           rtString=rtString+":" + Integer.toString(second);         }        rtString= rtString+space+ Integer.toString(microSecond);      return  rtString;    }    public void  setTime(int h,int m,int s){      hour=h;      minute=m;      second=s;      judgeIllegeValue();    }    public void  setTime(int h,int m,int s,int ms){   hour=h;   minute=m;   second=s;   microSecond=ms;   judgeIllegeValue();    }    public void setTime(String x){     String  strTime=x.trim();     String  tmpStr=strTime;     int  pos=tmpStr.indexOf(".");     if(pos<1)  tmpStr=strTime;     else     {       strTime=tmpStr.substring(0,pos);      String r=tmpStr.substring(pos+1,tmpStr.length());       microSecond=Integer.parseInt(r);     }     if(strTime.length()>4)     {      StringTokenizer st = new StringTokenizer(strTime.trim(),":");      String []str=new String[4];      int count=0;      while (st.hasMoreTokens()) {        if(count>3)  break;        str[count]=(String)st.nextElement();         count++;       }       if(count==2){         hour=Integer.parseInt(str[0]);         minute=Integer.parseInt(str[1]);         second=Integer.parseInt(str[2]);       }       if(count==3){                hour=Integer.parseInt(str[0]);                minute=Integer.parseInt(str[1]);                second=Integer.parseInt(str[2]);                //microSecond=Integer.parseInt(str[3]);              }       judgeIllegeValue();     }    }    public  boolean timeUpper(CHECTime t){     // return getStamp()>t.getStamp() ?true : false;    long a=getStamp();    long b=t.getStamp() ;     if(a>b) return true;     if((a==b)  &&  (microSecond>t.getMicroSecond())) return true;     return false;    }   public  boolean timeLower(CHECTime t){     //return getStamp()<t.getStamp() ?true : false;     long a=getStamp();      long b=t.getStamp() ;       if(a<b) return true;       if((a==b)  &&  (microSecond<t.getMicroSecond())) return true;     return false;   }  public  boolean timeLowerEqual(CHECTime t){   // return getStamp()<=t.getStamp() ?true : false;    long a=getStamp();   long b=t.getStamp() ;    if(a<b) return true;    if((a==b)  &&  (microSecond<=t.getMicroSecond())) return true;     return false;}public  boolean timeUpperEqual(CHECTime t){   //   return getStamp()>=t.getStamp() ?true : false;  long a=getStamp();     long b=t.getStamp() ;      if(a>b) return true;      if((a==b)  &&  (microSecond>=t.getMicroSecond())) return true;     return false;}  /*  public  boolean timeUpper(CHECTime t){         if(hour>t.getHour()){           return true;         }         else  if( hour==t.getHour() & minute>t.getMinute()){           return true;         }         else if( hour==t.getHour() & minute==t.getMinute() & second>t.getSecond())         {           return true;         }         else if( hour==t.getHour() & minute==t.getMinute() & second==t.getSecond() & microSecond>t.getMicroSecond())         {           return true;         }         return false;   }   public  boolean timeLower(CHECTime t){        if(hour<t.getHour()){          return true;        }        else  if( hour==t.getHour() & minute<t.getMinute()){          return true;        }        else if( hour==t.getHour() & minute==t.getMinute() & second<t.getSecond())        {          return true;        }        else if ( hour==t.getHour() & minute==t.getMinute() & second==t.getSecond() & microSecond<t.getMicroSecond())        {          return true;        }        return false;   }  public  boolean timeLowerEqual(CHECTime t){       if(timeLower(t) || equal(t)) return true;       return false;}public  boolean timeUpperEqual(CHECTime t){      if(timeUpper(t) || equal(t)) return true;      return false;}*/public long  addMicroSecond(long s){   long tmpms=s+microSecond;   long sec=tmpms/1000;   long tmp=tmpms%1000;   if(tmp<0)   {     sec--;     tmp=1000+tmp;   }   microSecond=(int)tmp;   return  add(sec);}public long add(long s){  long dt=0,ht=0,mt=0,st=0;  long tmp=0;  dt=s / 86400;//one day is 86400 seconds  tmp=s%86400;//last seconds  ht=tmp/3600;  tmp=tmp%3600;  mt=tmp/60;  st=tmp%60;  second+=st;  if(second>59){    second-=60;    mt++;  }  else if(second<0)  {    second+=60;    mt--;  }  minute+=mt;  if(minute>59)  {    minute-=60;    ht++;  }  else if(minute<0)  {    minute+=60;    ht--;  }  hour+=ht;  if(hour>23){    hour-=24;    dt++;  }  else if(hour<0)  {    hour+=24;    dt--;  }  return dt;}public long add(CHECTime t){   long dt=0,ht=0,mt=0,st=0;   long tmp=0;   ht=t.getHour();   mt=t.getMinute();   st=t.getSecond();   if(second>59){     second-=60;     mt++;   }   minute+=mt;   if(minute>59)   {     minute-=60;     ht++;   }   hour+=ht;   if(hour>23){     hour-=24;     dt++;   }   return dt;}public long  diffTime(CHECTime t){   int h1,m1, s1;   int h2,m2,s2;     h1=hour;     m1=minute;     s1=second;     h2=t.getHour();     m2=t.getMinute();     s2=t.getSecond();   return ((h1-h2)*60+m1-m2)*60+s1-s2;}private boolean  judgeIllegeValue(){  boolean b=false;  if (hour>23)  {    hour%=24;    b=true;  }  if(minute>59){    minute%=60;    b=true;  }  if(second>59){    second%=60;    b=true;  }  if(b){    System.out.println("Illege time value! Be foramt.");  }  return b;}public long add(int flag,long s){  long tmp=0;  if(flag==FLAG_SECOND)  {  tmp=s;  }  else if(flag==FLAG_MINUTE)  {    tmp=s*60;  }  else if(flag==FLAG_HOUR)  {    tmp=s*3600;  }  return add(tmp);}public long  getStamp()  {     return  (hour*100+minute)*100+second;  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -