从明天和两个月前一整天,绕过他们 [英] Get all days from tomorrow and two months forward and loop through them

查看:117
本文介绍了从明天和两个月前一整天,绕过他们的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我明天要带走,加上60天,并逐日循环。只是想知道这样做的适当方式是什么?

I need to take tomorrow, add 60 days to it and loop over it day by day. Just wondering what would be the appropriate way of doing this?

这是我尝试的

    Calendar startCalemder = Calendar.getInstance();
    startCalemder.setTime(new Date());
    startCalemder.add(Calendar.DATE, 1);

    Calendar endCalendar = Calendar.getInstance();
    endCalendar.setTime(new Date());
    endCalendar.add(Calendar.DATE, 60);

    //loop over day by day
    for (; startCalemder.compareTo(endCalendar) <= 0;
            startCalemder.add(Calendar.DATE, 1)) {
        startCalemder.get(Calendar.YEAR); //shows year
        startCalemder.get(Calendar.MONTH); //shows month
        startCalemder.get(Calendar.DAY_OF_MONTH); //shows day
    }


推荐答案

这样做:

public static void main(String[] args) {
    final Calendar c = Calendar.getInstance();

    //set the timestamp info to 00:00:00 so that we can compare the dates later if needed
    c.set(Calendar.HOUR_OF_DAY, 0);
    c.set(Calendar.MINUTE, 0);
    c.set(Calendar.SECOND, 0);
    c.set(Calendar.MILLISECOND, 0);

    final int days = 61; //61 because we will add the result after we add the day

    final List<Date> datesList= new ArrayList<Date>(); //list to store each date object

    for (int i = 0; i < days; i++) {
        c.add(Calendar.DATE, 1); //add one day to the calendar (so first value is tomorrow)
        datesList.add(new Date(c.getTimeInMillis())); //store each day in the list
    }

    //iterate through the list and do whatever you want with the dates
    for (Date date : datesList) {
        System.out.println(date);
    }
}

Ouput:


Thu Nov 20 00:00:00 EET 2014
Fri Nov 21 00:00:00 EET 2014
Sat Nov 22 00:00:00 EET 2014
Sun Nov 23 00:00:00 EET 2014
Mon Nov 24 00:00:00 EET 2014
Tue Nov 25 00:00:00 EET 2014
Wed Nov 26 00:00:00 EET 2014
Thu Nov 27 00:00:00 EET 2014
Fri Nov 28 00:00:00 EET 2014
Sat Nov 29 00:00:00 EET 2014
Sun Nov 30 00:00:00 EET 2014
Mon Dec 01 00:00:00 EET 2014
Tue Dec 02 00:00:00 EET 2014
Wed Dec 03 00:00:00 EET 2014
Thu Dec 04 00:00:00 EET 2014
Fri Dec 05 00:00:00 EET 2014
Sat Dec 06 00:00:00 EET 2014
Sun Dec 07 00:00:00 EET 2014
Mon Dec 08 00:00:00 EET 2014
Tue Dec 09 00:00:00 EET 2014
Wed Dec 10 00:00:00 EET 2014
Thu Dec 11 00:00:00 EET 2014
Fri Dec 12 00:00:00 EET 2014
Sat Dec 13 00:00:00 EET 2014
Sun Dec 14 00:00:00 EET 2014
Mon Dec 15 00:00:00 EET 2014
Tue Dec 16 00:00:00 EET 2014
Wed Dec 17 00:00:00 EET 2014
Thu Dec 18 00:00:00 EET 2014
Fri Dec 19 00:00:00 EET 2014
Sat Dec 20 00:00:00 EET 2014
Sun Dec 21 00:00:00 EET 2014
Mon Dec 22 00:00:00 EET 2014
Tue Dec 23 00:00:00 EET 2014
Wed Dec 24 00:00:00 EET 2014
Thu Dec 25 00:00:00 EET 2014
Fri Dec 26 00:00:00 EET 2014
Sat Dec 27 00:00:00 EET 2014
Sun Dec 28 00:00:00 EET 2014
Mon Dec 29 00:00:00 EET 2014
Tue Dec 30 00:00:00 EET 2014
Wed Dec 31 00:00:00 EET 2014
Thu Jan 01 00:00:00 EET 2015
Fri Jan 02 00:00:00 EET 2015
Sat Jan 03 00:00:00 EET 2015
Sun Jan 04 00:00:00 EET 2015
Mon Jan 05 00:00:00 EET 2015
Tue Jan 06 00:00:00 EET 2015
Wed Jan 07 00:00:00 EET 2015
Thu Jan 08 00:00:00 EET 2015
Fri Jan 09 00:00:00 EET 2015
Sat Jan 10 00:00:00 EET 2015
Sun Jan 11 00:00:00 EET 2015
Mon Jan 12 00:00:00 EET 2015
Tue Jan 13 00:00:00 EET 2015
Wed Jan 14 00:00:00 EET 2015
Thu Jan 15 00:00:00 EET 2015
Fri Jan 16 00:00:00 EET 2015
Sat Jan 17 00:00:00 EET 2015
Sun Jan 18 00:00:00 EET 2015
Mon Jan 19 00:00:00 EET 2015

这篇关于从明天和两个月前一整天,绕过他们的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆