首页 > 用java得到接下来14天的每一天分别为周几

用java得到接下来14天的每一天分别为周几

用java得到接下来14天的每一天分别为周几,因为项目要做一个时间选择的控件,所有要得到接下来14天分别为周几,没有找到合适的方法


java里面没有date相关的函数吗?


public static void main(String[] args) {
        List<String> nextDays = getNextDays(14);
        for (String string : nextDays) {
            System.out.println(string);
        }
    }

        private static List<String> getNextDays(int days) {
        String zhou = "日一二三四五六";
        Calendar instance = Calendar.getInstance();
        instance.setTime(new Date());
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        List<String> zhous = new ArrayList<>();
        for (int i =0;i<days;i++) {
            instance.add(Calendar.DATE, 1);
            int ind = instance.get(Calendar.DAY_OF_WEEK);
            zhous.add(sdf.format(instance.getTime())+"  星期"+zhou.substring(ind-1,ind));
        }
        return zhous;
    }

使用Joda-Time

List<String> dateRangeList = IntStream.range(0, 14).mapToObj(i -> {
     return (new DateTime()).plusDays(i).toString("yyyy-MM-dd E");
}).collect(Collectors.toList());

最后List输出结果

2016-04-18 星期一
2016-04-19 星期二
2016-04-20 星期三
2016-04-21 星期四
2016-04-22 星期五
2016-04-23 星期六
2016-04-24 星期日
2016-04-25 星期一
2016-04-26 星期二
2016-04-27 星期三
2016-04-28 星期四
2016-04-29 星期五
2016-04-30 星期六
2016-05-01 星期日

我的java学的不好,你这个太方便了

【热门文章】
【热门文章】