java时间比较_Java 时间比较

小编典典

Java还没有一个好的内置Time类(它有一个用于JDBC查询的类,但这不是你想要的)。

一种选择是使用JodaTime API和它的本地时间类。

只使用内置的Java API,就只能使用java.util.Date。你可以使用SimpleDateFormat来解析时间,然后使用Date比较函数来查看时间是否在其他时间之前或之后:

SimpleDateFormat parser = new SimpleDateFormat("HH:mm");

Date ten = parser.parse("10:00");

Date eighteen = parser.parse("18:00");

try {

Date userDate = parser.parse(someOtherDate);

if (userDate.after(ten) && userDate.before(eighteen)) {

...

}

} catch (ParseException e) {

// Invalid date was entered

}

或者,你可以只使用一些字符串操作,也许使用正则表达式来提取小时和分钟部分,将它们转换为数字并进行数值比较:

Pattern p = Pattern.compile("(\d{2}):(\d{2})");

Matcher m = p.matcher(userString);

if (m.matches() ) {

String hourString = m.group(1);

String minuteString = m.group(2);

int hour = Integer.parseInt(hourString);

int minute = Integer.parseInt(minuteString);

if (hour >= 10 && hour <= 18) {

...

}

}

这实际上取决于你要完成的工作。

2020-03-22

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值