首页 / JAVA / java – 特定时间间隔内的时间
java – 特定时间间隔内的时间
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 特定时间间隔内的时间,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1182字,纯文字阅读大概需要2分钟。
内容图文
![java – 特定时间间隔内的时间](/upload/InfoBanner/zyjiaocheng/747/103085214e3944189ec1d4b00051f231.jpg)
我正试图解决一个看似简单的问题,但是我无法完全理解它.
我有两次startTime和stopTime,可以认为格式为:hh:mm:ss [24hr format].
现在给出第三次 – timeToTest – 我需要找出timeToTest是否介于startTime和stopTime之间.除了时间之外,没有涉及日期信息.
所以例如 – 如果我有startTime = ’22:30:00’和stopTime = ’03:30:00′,那么对于timeToTest = ’01:14:23′,测试应该返回true.
我已经尝试使用java.util.Date解决方案,使用getTime()将时间转换为毫秒,但是如果任何间隔超过24小时障碍,逻辑将失败.
我正在尝试使用Java构建解决方案 – 但我相信逻辑与语言无关.
解决方法:
因此,我可以提出的最简单的解决方案,坚持使用普通的旧java.util.Date,如下所示:
String d1 = "21:00:00";
String d2 = "04:00:00";
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
String dToTest = "16:00:00";
boolean isSplit = false, isWithin = false;
Date dt1 = null, dt2 = null, dt3 = null;
dt1 = sdf.parse(d1);
dt2 = sdf.parse(d2);
dt3 = sdf.parse(dToTest);
isSplit = (dt2.compareTo(dt1) < 0);
System.out.println("[split]: " +isSplit);
if (isSplit)
{
isWithin = (dt3.after(dt1) || dt3.before(dt2));
}
else
{
isWithin = (dt3.after(dt1) && dt3.before(dt2));
}
System.out.println("Is time within interval? " +isWithin);
随意指出任何错误 – 愿意工作和解决它.
内容总结
以上是互联网集市为您收集整理的java – 特定时间间隔内的时间全部内容,希望文章能够帮你解决java – 特定时间间隔内的时间所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。