这个只适合平时做个小作业,真要是中、大型项目那就不行了哦 , 好像会有线程不安全的问题,这个具体我还没整明白,弄明白了我会再来更,嘻嘻
一、接收键盘输入的时间格式数据
1、SimpleDateFormat
Scanner input = new Scanner(System.in);
SimpleDateFormat sdf = new SimpleDateFormat("xxxxxxx");
Date begin = sdf.parse(input.next());
“xxxxxxx”:输入想要的时间格式,例如:
hh:mm 或 yyyy-MM-dd HH:mm:ss (24小时制),12小时制的只需将 HH:mm:ss 改为 hh:mm:ss
SimpleDateFormat日期-时间格式参数
二、时间数据的比较和计算
1、时间格式变量的定义
Date s1 = sdf.parse("07:00");
2、时间格式变量的比较和计算
.getTime()
例:
if(end1.getTime() < e1.getTime()) {
dif = end1.getTime() - begin1.getTime();
dif1 = 0;
}else {
dif = e1.getTime() - begin1.getTime();
dif1 = end1.getTime() - e1.getTime();
}
end1、begin1、e1等均为相同格式的时间变量
注:比较方法2 —— Date.after\before\equals 直接比较
(1) after:返回值 true如果代表Date对象是严格迟于when表示的时刻; 否则为false;
(2) before:返回值 true如果Date对象在when表示的时刻之前,否则为false。
例:
if (startTime.after(endTime)){
// startTime 晚于 endTime
}
3、时间变量的时分秒转换:
// time 用上述方法.getTime() 得到
long minutes = time / (1000*60) //转分钟
long second = time / 1000 //转秒