为了账号安全,请及时绑定邮箱和手机立即绑定

时间比较.

时间比较.

陪伴而非守候 2019-11-02 10:26:59
我有时间,hh:mm必须由用户以这种格式输入。但是,我想比较上午10点到下午6点之间的时间(例如11:22)?但是,我该如何比较呢?
查看完整描述

3 回答

?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

使用Java 8+,您可以使用新的Java时间API:


解析时间:


LocalTime time = LocalTime.parse("11:22")

做日期比较,你有LocalTime::isBefore和LocalTime::isAfter-注意,这些方法是严格


因此,您的问题将很简单:


public static void main(String[] args) {

  LocalTime time = LocalTime.parse("11:22");

  System.out.println(isBetween(time, LocalTime.of(10, 0), LocalTime.of(18, 0)));

}


public static boolean isBetween(LocalTime candidate, LocalTime start, LocalTime end) {

  return !candidate.isBefore(start) && !candidate.isAfter(end);  // Inclusive.

}

对于包容的开头但包容的结尾(半开放),请使用此行。


return !candidate.isBefore(start) && candidate.isBefore(end);  // Exclusive of end.


查看完整回答
反对 回复 2019-11-02
  • 3 回答
  • 0 关注
  • 594 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信