gpt4 book ai didi

java - 无法将缺失的时间字符串添加到列表中

转载 作者:行者123 更新时间:2023-12-01 19:45:26 24 4
gpt4 key购买 nike

我正在尝试用 java 构建一个房间预订应用程序。我有两个 Date 类型的变量,

RoombookedFrom = Fri Nov 30 11:15:00 CET 2018

RoombookedTo = Fri Nov 30 12:30:00 CET 2018

根据这些日期,我正在构建新的字符串数组列表并以字符串格式存储时间,如下所示:

ArrayList<String> list1 = new ArrayList<String>();

list1 = [11:15, 12:30]

但在这里我也愿意存储房间不可用的缺失时间。例如

我想要什么

每隔 15 mins 的时间间隔我想从 11:15 建立列表至12:30

list1 = [11:15, 11:30, 11:45, 12:00, 12:15, 12:30]

所以。例如-2

如果是list2 = [10:00, 11:15]那么输出应该是

list2 = [10:00, 10:15, 10:30, 10:45, 11:00, 11:15]

我尝试过的

我尝试为此制定一种方法,将小时转换为数字并计算差异,但我不明白如何管理这里的分钟以正确显示小时。

我也尝试在stackoverflow上搜索这个,但没有找到任何合适的解决方案

最佳答案

下面的代码将满足您的目的:

    @Test
public void test_stackOver() {
String roomBookedFrom = "Fri Nov 30 11:15:00 CET 2018";
String roomBookedTo = "Fri Nov 30 12:30:00 CET 2018";

// Time Interval
int minInterval = 15;
SimpleDateFormat format = new SimpleDateFormat("EEE MMM dd HH:mm:SSS Z yyyy");
SimpleDateFormat timeFormatter = new SimpleDateFormat("HH:mm");

// List to hold times
List<String> times = new ArrayList<>();
try {
Date from = format.parse(roomBookedFrom);
Date to = format.parse(roomBookedTo);
String timeFrom = timeFormatter.format(from);
String timeTo = timeFormatter.format(to);
times.add(timeFrom);
while (from.before(to)) {
Calendar cal = Calendar.getInstance();
cal.setTime(from);
cal.add(Calendar.MINUTE, minInterval);
from = cal.getTime();
times.add(timeFormatter.format(cal.getTime()));
}
times.add(timeTo);
System.out.println(times);
} catch (ParseException e) {
e.printStackTrace();
}
}

关于java - 无法将缺失的时间字符串添加到列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53554680/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com