gpt4 book ai didi

java - 获取开始日期和结束日期的数据

转载 作者:行者123 更新时间:2023-12-01 11:17:13 37 4
gpt4 key购买 nike

我陷入了这样一种情况:在 for 循环中,我以字符串的形式获取日期时间

16/07/2014 11:06:33
25/05/2014 06:24:56
21/05/2014 21:37:03
21/05/2014 21:18:54
21/05/2014 21:00:57
21/05/2014 20:41:12
21/05/2014 20:24:50
15/05/2014 09:44:20
13/05/2014 17:08:27
05/05/2014 21:48:27
05/05/2014 12:02:59

我将其转换为SimpleDateFormat,以便通过使用开始日期和结束日期我可以获得这些日期范围之间的日期时间。我还有开始日期和结束日期变量。我想知道在当前情况下如何应用开始和结束日期过滤器?

 String testStart = "05/05/2014 12:02:59";
String testEnd = "15/05/2014 09:44:20";
for(int i=0; i<testOutput.getResultBody().getPaymentResult().size(); i++)
{
String oldFormat = "dd/MM/yyyy HH:mm:ss";
String newFormat = "dd/MM/yyyy HH:mm:ss";
SimpleDateFormat sdf1 = new SimpleDateFormat(oldFormat);
SimpleDateFormat sdf2 = new SimpleDateFormat(newFormat);
System.out.println("-->" + sdf2.format(sdf1.parse(paymentOutput.getResultBody().getPaymentResult().get(i).getMyDate())));
}

我很难思考在这种情况下使用的逻辑。

最佳答案

试试这个:

String format = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");

Date testStart = format.parse("05/05/2014 12:02:59");
Date testEnd = format.parse("15/05/2014 09:44:20");

for(int i=0; i<testOutput.getResultBody().getPaymentResult().size(); i++) {
String dateStr = paymentOutput.getResultBody().getPaymentResult().get(i).getMyDate();
Date date = format.parse(dateStr);
if (date.compareTo(testStart) >= 0 && date.compareTo(testEnd) < 0) {
System.out.println(dateStr);
}
}

如果您使用的是最新版本的 Java,您还可以考虑使用 Joda time API 和 Streams 以获得更好的可读性。

关于java - 获取开始日期和结束日期的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31671027/

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