为了账号安全,请及时绑定邮箱和手机立即绑定

迭代列表对象中的日期变量并根据位置选择日期范围

迭代列表对象中的日期变量并根据位置选择日期范围

www说 2021-12-22 19:27:23
我有一种情况,我在List. 现在,我想选择前 2 个位置日期作为开始日期和结束日期,然后选择下 2 个位置作为开始日期和结束日期,依此类推。获得开始日期和结束日期后,我需要找到天数之间的天数并计算天数。这是列表对象中的日期。[2018-09-05, 2018-09-14, 2018-09-29, 2018-10-14, 2018-10-29]2018-09-05作为开始2018-09-13日期和结束日期 - 查找这些日期之间的天数。2018-09-14作为开始2018-09-28日期和结束日期 - 查找这些日期之间的天数。2018-09-29作为开始2018-10-13日期和结束日期 - 查找这些日期之间的天数。2018-10-14作为开始2018-10-28日期和结束日期 - 查找这些日期之间的天数。请帮我如何找到它。提前致谢。
查看完整描述

2 回答

?
慕哥9229398

TA贡献1877条经验 获得超6个赞

如果列表包含偶数个有效日期字符串,则以下代码将起作用。

将迭代列表,提取每对日期并计算天数差异:


public static long getDaysDif(LocalDate fromDate, LocalDate toDate) {

    return ChronoUnit.DAYS.between(fromDate, toDate);

}


public static LocalDate getLocalDateFromString(String d, String format) {

    return LocalDate.parse(d, DateTimeFormatter.ofPattern(format));

}


public static void main(String[] args) {

    List<String> list = new ArrayList<>

            (Arrays.asList

                    ("2018-09-05", "2018-09-13", "2018-09-14", "2018-09-28", "2018-09-29", "2018-10-13"));

    for (int i = 0; i < list.size(); i+=2) {

        String strStart = list.get(i);

        String strEnd = list.get(i + 1);


        LocalDate dateStart = getLocalDateFromString(strStart, "yyyy-MM-dd");

        LocalDate dateEnd = getLocalDateFromString(strEnd, "yyyy-MM-dd");


        long dif = getDaysDif(dateStart, dateEnd);


        System.out.println(dif);

    }

}

将打印:


8

14

14


查看完整回答
反对 回复 2021-12-22
?
PIPIONE

TA贡献1829条经验 获得超9个赞

我不完全理解您关于选择日期的问题的第一部分,但要找到日期之间的天数,您可以执行以下操作:


import java.time.LocalDate;

import java.time.Period;


public class Application {


    public static void main(String[] args) {

        LocalDate startDate= LocalDate.now();

        LocalDate endDate= today.plusDays(6);


        Period period = Period.between(startDate, endDate);

        int difference = period.getDays();

    }

}


查看完整回答
反对 回复 2021-12-22
  • 2 回答
  • 0 关注
  • 205 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号