📄 mytime.java
字号:
package com.tarena.abs.model;
import java.util.*;
import java.io.Serializable;
/**
* 我们自己定义的一个时间类,只保留小时和分钟值,小时采用24小时进制。
* 该类实现Comparable接口,该类对象可比较大小。
* @author asus
*
*/
public class MyTime implements Comparable,Serializable{
private int hour;
private int minute;
private static final long serialVersionUID = 535467890213456L;
/**
* 通过小时和分钟值(int)来构造一个MyTime对象。
*
* @param hour
* @param minute
* @throws WrongTimeFormatExcetion
*/
public MyTime(int hour,int minute) throws WrongTimeFormatExcetion{
if(hour<0 || hour >23){
throw new WrongTimeFormatExcetion("小时格式错误!");
}
if(minute<0 ||minute>59){
throw new WrongTimeFormatExcetion("分钟格式错误!");
}
this.hour=hour;
this.minute=minute;
}
/**
* 静态方法,用来把一个字符串解析成一个日期值。
* @param str
* @return
*/
public static MyTime getTimeFromStr(String str){
StringTokenizer st=new StringTokenizer(str,":");
return new MyTime(Integer.parseInt(st.nextToken()),Integer.parseInt(st.nextToken()));
}
/**
* 用来比较两个时间值的大小。
* @param o
* @return
*/
public int compareTo(Object o){
MyTime time=(MyTime)o;
if(this.hour>time.hour)
return 1;
else if(this.hour<time.hour)
return -1;
else
return this.minute-time.minute;
}
public String toString(){
return (hour<10?("0"+hour):(hour+""))+":"+(minute<10?("0"+minute):(minute+""));
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -