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

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

阅读 2.6k
4 个回答
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;
    }

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

使用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学的不好,你这个太方便了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题