package wsj;
/**
* 当前类所有函数
* -------------
* 判断某时刻str1是否在时间段str2内:isInTime()
* 计算当前时刻到下一时刻有多少秒,numDay为两个时刻相隔的天数:getSeconds()
*/
import java.sql.Time;
public class MyTime {
// 判断某时刻str1是否在时间段str2内
public static boolean isInTime(String str1, String str2) {
// String str1 = "2:00:02";
// String str2 = "3:00:02-20:00:02";
Time curTime = Time.valueOf(str1);
String[] strings = str2.split("-");
Time leftTime = Time.valueOf(strings[0]);
Time rightTime = Time.valueOf(strings[1]);
if (curTime.after(leftTime) && curTime.before(rightTime)) {
return true;
} else {
return false;
}
}
// 计算当前时刻到下一时刻有多少秒,numDay为两个时刻相隔的天数
public static long getSeconds(String timeCur, String timeNext, int numDay) {
String[] strings = timeNext.split(":");
int hour = Integer.parseInt(strings[0]);
int minute = Integer.parseInt(strings[1]);
int second = Integer.parseInt(strings[2]);
long second1 = hour * 3600 + minute * 60 + second;
strings = timeCur.split(":");
hour = Integer.parseInt(strings[0]);
minute = Integer.parseInt(strings[1]);
second = Integer.parseInt(strings[2]);
long daySeconds = 24 * 3600;
if (numDay == 0) {
long second2 = hour * 3600 + minute * 60 + second;
return second1 - second2;
} else {
long second2 = daySeconds - (hour * 3600 + minute * 60 + second);
return second1 + second2 + daySeconds * (numDay - 1);
}
}
public static void main(String[] args) {
// 测试isInTime()
String str1 = "12:00:02";
String str2 = "3:00:02-20:00:02";
System.out.println(isInTime(str1, str2));
System.out.println("---");
// 测试getSeconds()
String str3 = "23:58:59";
String str4 = "23:59:59";
String str5 = "00:00:02";
System.out.println(getSeconds(str3, str4, 0));
System.out.println(getSeconds(str4, str5, 1));
}
}
阿健的刷题库函数|MyTime
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Q1:2008年-2017年,全球经济特征 在2008年之前,全球化浪潮高涨、互联网技术推动人类社会、商业社会发展...