按每小时获取LocalDateTime
时间: 2023-11-02 11:00:24 浏览: 18
要按每小时获取LocalDateTime,你可以使用`LocalDateTime.now()`方法获取当前日期和时间。如果你只关注小时部分,你可以使用`getHour()`方法从`LocalDateTime`对象中提取小时数。以下是一个示例代码:
```java
LocalDateTime now = LocalDateTime.now();
int hour = now.getHour();
```
上述代码将返回当前时间的小时数。请注意,这将返回一个整数,表示24小时制的小时数。如果你需要使用12小时制,请将小时数与12取余。
相关问题
localdatetime拆分按照每12小时 的java代码
以下是将LocalDateTime拆分为每12小时的Java代码:
```
LocalDateTime dateTime = LocalDateTime.now(); // 获取当前时间
// 拆分时间为每12小时
LocalDateTime dateTime1 = dateTime.withHour(0).withMinute(0).withSecond(0).withNano(0); // 00:00:00
LocalDateTime dateTime2 = dateTime.withHour(12).withMinute(0).withSecond(0).withNano(0); // 12:00:00
// 判断当前时间是在哪个时间段内
if (dateTime.isBefore(dateTime2)) {
System.out.println("当前时间在上午时间段:" + dateTime1 + " - " + dateTime2);
} else {
System.out.println("当前时间在下午时间段:" + dateTime2 + " - " + dateTime1.plusDays(1));
}
```
上述代码中,首先获取当前时间,然后将时间拆分为每12小时,即上午和下午时间段。接着判断当前时间是在哪个时间段内,并输出相应的提示信息。
java获取当天每个小时的时间段
你可以使用 Java 中的 `LocalDateTime` 和 `DateTimeFormatter` 类来获取当天每个小时的时间段。以下是一个示例代码:
```java
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class HourlyTimeRanges {
public static void main(String[] args) {
LocalDateTime now = LocalDateTime.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
for (int i = 0; i < 24; i++) {
LocalDateTime start = LocalDateTime.of(now.getYear(), now.getMonth(), now.getDayOfMonth(), i, 0, 0);
LocalDateTime end = LocalDateTime.of(now.getYear(), now.getMonth(), now.getDayOfMonth(), i, 59, 59);
System.out.println("Hour " + i + ": " + start.format(formatter) + " - " + end.format(formatter));
}
}
}
```
运行该程序,将输出当前日期的每个小时的时间段,例如:
```
Hour 0: 2021-11-01 00:00:00 - 2021-11-01 00:59:59
Hour 1: 2021-11-01 01:00:00 - 2021-11-01 01:59:59
Hour 2: 2021-11-01 02:00:00 - 2021-11-01 02:59:59
...
Hour 22: 2021-11-01 22:00:00 - 2021-11-01 22:59:59
Hour 23: 2021-11-01 23:00:00 - 2021-11-01 23:59:59
```