我有两个小时的时间,可以说12:00和14:00(输入将始终是“任何”天的两个小时),第二次将始终大于第一次。所以输入很简单:一天两次。我需要在两次之间每隔30分钟查找一次。

我需要以下输出(在我的情况下,每次输出之间的经过时间始终为30分钟:

12:00
12:30
13:00
13:30
14:00
14:30

我正在发现jodatime,但对如何确定“ startTime”和“ end Time”感到有些困惑

最佳答案

实际上,这很简单:

DateTime current = start;
while(true){
    System.out.println(current);
    current=current.plusMinutes(30);
    if(current.isAfter(stop))break;
}


回应评论:

要解析一个字符串,您需要一个DateTimeFormatter。这是获取一种的几种方法之一:

private static final DateTimeFormatter DATE_TIME_FORMATTER =
    DateTimeFormat.forPattern("HH:mm");


现在您可以执行以下操作:

DateTime startDate = DATE_TIME_FORMATTER.parseDateTime(startString);

10-06 14:48