zoukankan      html  css  js  c++  java
  • Java 获取日期间的日期 & 根据日期获取星期

    场景:根据起止日期获取中间的日期; 根据日期获取当前日期的星期

         

    • 根据日期日期获取日期

        /**
         * 获取日期间日期
         * @param start
         * @param end
         * @return
         */
        private static List<Date> getBetweenDates(Date start, Date end) {
    
            List<Date> result = new ArrayList<>();
            Calendar tempStart = Calendar.getInstance();
            tempStart.setTime(start);
            Calendar tempEnd = Calendar.getInstance();
            tempEnd.setTime(end);
            tempEnd.add(Calendar.DAY_OF_YEAR, 1);
            while (tempStart.before(tempEnd)) {
                result.add(tempStart.getTime());
                tempStart.add(Calendar.DAY_OF_YEAR, 1);
            }
            return result;
        }
    • 根据日期获取属于星期几

        /**
         * 根据日期获取 星期 (2019-05-06 ——> 星期一)
         * @param datetime
         * @return
         */
        public static String dateToWeek(String datetime) {
    
            SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");
            String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
            Calendar cal = Calendar.getInstance();
            Date date;
            try {
                date = f.parse(datetime);
                cal.setTime(date);
            } catch (ParseException e) {
                e.printStackTrace();
            }
            //一周的第几天
            int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
            if (w < 0)
                w = 0;
            return weekDays[w];
        }
    • 完整示例

    import java.text.DateFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Calendar;
    import java.util.Date;
    import java.util.List;
    
    public class TestMain {
    
        public static void main(String[] args) throws ParseException {
    
            DateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
            List<Date> dateList = getBetweenDates(sdf.parse("2019-05-06"), sdf.parse("2019-05-12"));
            for (Date date : dateList) {
                System.out.println(sdf.format(date) + " " + dateToWeek(sdf.format(date)));
            }
        }
    
    
        /**
         * 获取日期间日期
         * @param start
         * @param end
         * @return
         */
        private static List<Date> getBetweenDates(Date start, Date end) {
    
            List<Date> result = new ArrayList<>();
            Calendar tempStart = Calendar.getInstance();
            tempStart.setTime(start);
            Calendar tempEnd = Calendar.getInstance();
            tempEnd.setTime(end);
            tempEnd.add(Calendar.DAY_OF_YEAR, 1);
            while (tempStart.before(tempEnd)) {
                result.add(tempStart.getTime());
                tempStart.add(Calendar.DAY_OF_YEAR, 1);
            }
            return result;
        }
    
        /**
         * 根据日期获取 星期 (2019-05-06 ——> 星期一)
         * @param datetime
         * @return
         */
        public static String dateToWeek(String datetime) {
    
            SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");
            String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
            Calendar cal = Calendar.getInstance();
            Date date;
            try {
                date = f.parse(datetime);
                cal.setTime(date);
            } catch (ParseException e) {
                e.printStackTrace();
            }
            //一周的第几天
            int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
            if (w < 0)
                w = 0;
            return weekDays[w];
        }
    }

      结果:

  • 相关阅读:
    webpack4.x 入门一篇足矣
    面试精选之Promise
    六月前端知识集锦(每月不可错过的文章集锦)
    SpringBoot整合MyBatis与MySql8.0
    tomcat报错:This is very likely to create a memory leak问题解决
    配置tomcat服务器内存大小中的Xms、Xmx、PermSize、MaxPermSize 详解
    不用FTP,直接Windows与Linux下互传文件
    SpringBoot项目单元测试
    web.xml 中的listener、 filter、servlet 加载顺序及其详解
    linux下重启weblogic(关闭和启动)
  • 原文地址:https://www.cnblogs.com/BillyYoung/p/10833471.html
Copyright © 2011-2022 走看看