当前位置: 首页 > 面试题库 >

在java.time.LocalTime之间(第二天)

穆文斌
2023-03-14
问题内容

请建议是否有API支持来确定我的时间是否在2个LocalTime实例之间,或者建议采用其他方法。

我有这个实体:

 class Place {
   LocalTime startDay;
   LocalTime endDay;
 }

它存储工作日的开始和结束时间,即从“ 9:00”到“ 17:00”,或者从“ 22:00”到“ 5:00”的夜总会。

我需要实现一种Place.isOpen()确定该场所在给html" target="_blank">定时间是否开放的方法。

一个简单的isBefore/ isAfter在这里不起作用,因为我们还需要确定结束时间是否在第二天。

当然,我们可以比较开始时间和结束时间并做出决定,但是我想要一些没有附加逻辑的东西,只是一个简单的between()调用。如果LocalTime不足以达到此目的,请建议其他。


问题答案:

如果我理解正确,则需要根据关闭时间是在开放时间的同一天(9-17)还是在隔天的开放时间(22-5)做出两种选择。

它可能只是:

public static boolean isOpen(LocalTime start, LocalTime end, LocalTime time) {
  if (start.isAfter(end)) {
    return !time.isBefore(start) || !time.isAfter(end);
  } else {
    return !time.isBefore(start) && !time.isAfter(end);
  }
}


 类似资料:
  • 主要内容:类声明,字段,类方法,方法继承类表示ISO-8601日历系统中没有时区的时间,例如。 类声明 以下是类的声明 - 字段 以下是类的字段 - - 支持的最大LocalTime,。 - 支持的最小LocalTime,。 - 当天开始的午夜时间。 - 中午的时间,。 类方法 编号 方法 描述 1 Temporal adjustInto(Temporal temporal) 调整指定Temporal对象以使其具有与此对象相同的日期和时

  • 问题内容: 我试图从所有内容都在一个列中的地址中提取状态,这是一个示例: 我一直在尝试找出如何使用和一起做,但是我似乎无法掌握。这是我到目前为止的内容: 我以为它会从第二个逗号开始,到第三个逗号结束,并且让我的所有内容介于两者之间,但事实并非如此。 任何帮助表示赞赏。 问题答案: 一般来说, 例子:

  • 问题内容: 在下面的代码中,迭代运行两次。 是否可能恰好在第一次迭代和第二次迭代之间运行“ test2 <-true”? 我的意思是,在第一次迭代结束而第二次迭代未开始时,是否将true发送给“ test2”? 问题答案: 是。由于您的频道已缓冲,可以保存1个值。主执行流程可以继续进行,而无需您的匿名goroutine读取您发送到通道的值,并且可以在goroutine唤醒并读取通道上的值之前在通道

  • 12.4. Requests, Caching and Delivery Execution Workflow of a Web Request index.php is the main entry point for MediaWiki, and handles most requests processed by the application servers (i.e., requests

  • 假设我有一个音乐平台的用户监听的下表: 其中,id(int)是收听音乐(或书籍或任何其他材料)的用户的记录,user_id(int)是收听者id,started_at(timestamp)是用户开始收听的时间,finished_at是用户完成收听的时间 我需要做的是找出用户第一次和第二次收听之间的平均时间。例如,对于user_id=101的第一个用户,它将是: “2017-10-05 15:15:

  • 我有以下超文本标记语言: 我想提取包含给定文本的h2标记后面的第二个DIV。 正如您可能注意到的,在第一个和第二个div中,p标签不在同一位置。 要在第一个h2之后提取DIV,以下公式将起作用: 但是要提取第二个,用“布拉2”替换“布拉1”将不起作用,因为“p”标签位于其他地方,所以静态选择器将是: 我需要的是一个单一的选择器公式,在这个公式中,无论p块在哪里,改变文本都会使它工作 我试过几种方法