精华内容
下载资源
问答
  • LocalDate startDate = LocalDate.parse(param.getKssj()); LocalDate endDate = LocalDate.parse... //获取开始日期和结束日期相差的天数,作为循环条件 long distance = ChronoUnit.DAYS.between(startDate, en...

      

     LocalDate startDate = LocalDate.parse(param.getKssj());
     LocalDate endDate = LocalDate.parse(param.getJssj());
     
     //获取开始日期和结束日期相差的天数,作为循环条件
     long distance = ChronoUnit.DAYS.between(startDate, endDate);
    
     final DateTimeFormatter format = DateTimeFormatter.ofPattern("yyyy-MM-dd");
    
     //创建Stream流,使用iterate方法生成无限长度的Stream,以开始日期为起点,每次循环加一天
     //使用limit方法,限制循环次数,用获取的天数+1即为完整天数
     //使用filter方法进行过滤
     //格式化
     //转换为List集合
    
     List<String> target = Stream.iterate(startDate, i -> i.plusDays(1))
                      .limit(distance + 1)
                      .filter(item -> param.getXq()
                      .contains(item.getDayOfWeek().getValue()))
                      .map(item -> item.format(format))
                      .collect(Collectors.toList());
    
    target.forEach(System.out::println);
    

     

     

    展开全文
  • java开始结束日期遍历

    千次阅读 2016-10-12 01:15:20
    import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.List; public class DateUtil { public
    
    
    import java.text.DateFormat;
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Calendar;
    import java.util.Date;
    import java.util.List;
    
    public class DateUtil
    {
        public static void main(String[] args) {  
            
            Calendar start = Calendar.getInstance();  
            start.set(2016 , 9 , 11);
            Long startTIme = start.getTimeInMillis();
          
            Calendar end = Calendar.getInstance();  
            end.set(2016, 10, 1);  
            Long endTime = end.getTimeInMillis();  
          
            Long oneDay = 1000 * 60 * 60 * 24l;  
          
            Long time = startTIme;  
            while (time <= endTime) {  
                Date d = new Date(time);  
                DateFormat df = new SimpleDateFormat("yyyyMMdd");  
                System.out.println(df.format(d));  
                time += oneDay;  
            }  
            System.out.println("-------------");
            new DateUtil().printDate("2016-09-01" , "2016-09-01");
        }  
        
        private static List<Date> dateSplit(Date startDate, Date endDate)
                throws Exception {
            if (!startDate.before(endDate)&&startDate.compareTo(endDate)==1){
                throw new Exception("开始时间应该在结束时间之后");
              
            }
                
            Long spi = endDate.getTime() - startDate.getTime();
            Long step = spi / (24 * 60 * 60 * 1000);// 相隔天数
    
            List<Date> dateList = new ArrayList<Date>();
            dateList.add(startDate);
            for (int i = 1; i <= step; i++) {
                dateList.add(new Date(dateList.get(i - 1).getTime()
                        + (24 * 60 * 60 * 1000)));// 比上一天+一
            }
            return dateList;
        }
        public void printDate(String beginDate,String endDate){
            try {
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
                SimpleDateFormat sdf1 = new SimpleDateFormat("yyyyMMdd");
                Date start = sdf.parse(beginDate);
                Date end = sdf.parse(endDate);
                List<Date> lists = dateSplit(start, end);
                if (!lists.isEmpty()) {
                    for (Date date : lists) {
                        System.out.println(sdf1.format(date));
                    }
                }
            } catch (Exception e) {
            }
        }
    
    
    }
    

    展开全文
  • java日期循环

    千次阅读 2019-03-21 18:48:02
    看了很多的日期循环的代码,没有用到calendar的基本就不用看了,各种循环判断,只有这一篇比较靠谱 import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import ...

    看了很多的日期循环的代码,没有用到calendar的基本就不用看了,各种循环判断,只有这一篇比较靠谱

    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.Date;
    
     
    public class Test{
    	
    	@Test
    	public void forDate() {
    		// 日期格式化
    		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    		try {
    			// 起始日期
    			Date d1 = sdf.parse("2018-2-25");
    			// 结束日期
    			Date d2 = sdf.parse("2018-3-5");
    			Date tmp = d1;
    			Calendar dd = Calendar.getInstance();
    			dd.setTime(d1);
    			// 打印2018年2月25日到2018年3月5日的日期
    			while (tmp.getTime() < d2.getTime()) {
    				tmp = dd.getTime();
    				System.out.println(sdf.format(tmp));
    				// 天数加上1
    				dd.add(Calendar.DAY_OF_MONTH, 1);
    			}
    		} catch (ParseException e) {
    			e.printStackTrace();
    		}
    	}
     
    }

     

    展开全文
  • java根据开始时间结束时间计算中间间隔日期

    千次阅读 多人点赞 2019-05-22 17:51:58
    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 Test { publ...
    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 Test {
    
        public static List<String> findDates(String stime, String etime)
                throws ParseException {
            List<String> allDate = new ArrayList();
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    
            Date dBegin = sdf.parse(stime);
            Date dEnd = sdf.parse(etime);
            allDate.add(sdf.format(dBegin));
            Calendar calBegin = Calendar.getInstance();
            // 使用给定的 Date 设置此 Calendar 的时间
            calBegin.setTime(dBegin);
            Calendar calEnd = Calendar.getInstance();
            // 使用给定的 Date 设置此 Calendar 的时间
            calEnd.setTime(dEnd);
            // 测试此日期是否在指定日期之后
            while (dEnd.after(calBegin.getTime())) {
                // 根据日历的规则,为给定的日历字段添加或减去指定的时间量
                calBegin.add(Calendar.DAY_OF_MONTH, 1);
                allDate.add(sdf.format(calBegin.getTime()));
            }
            return allDate;
        }
    
        public static void main(String[] args) {
            //测试数据
            String stime = "2019-05-01";
            String etime = "2019-05-05";
    
            //集合中包含2019-05-01/2019-05-05,不需要可去除
            List<String> list = new ArrayList<>();
            try {
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
                long s = Long.valueOf(sdf.parse(stime).getTime());
                long e = Long.valueOf(sdf.parse(etime).getTime());
                //只有结束时间大于开始时间时才进行查询
                if(s<e) {
                    list = findDates(stime, etime);
                }
            } catch (ParseException e) {
                e.printStackTrace();
            }
            for(String time : list) {
                System.out.println(time);
            }
            System.out.println("间隔天数:" + list.size());
        }
    }

     

    展开全文
  • java入门--循环日期

    千次阅读 2015-12-08 13:42:31
    本篇主要介绍了java日期类Calendar类的一个子类实现GregorianCalendar。主要通过实现一个简单的日历程序,介绍了一些GregorianCalendar的常用方法。同时一些入门的朋友也可以使用这个小程序练习一下三种不同的循环...
  • java 遍历日期

    千次阅读 2018-09-11 11:51:33
    java 遍历开始到结束日期 import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class Main { public static void main(String...
  • Java 获取两个日期之间的所有日期

    千次阅读 2019-04-14 09:52:53
    Java 获取两个日期之间的所有日期 ...在java 7 之前,使用Calendar实例可以计算,循环给迭代中的每个日期加1,使用add方法,直到Calendar.Date属性到达结束日期。 下面请看Calendar实例的代码...
  • package com.hehuang.main; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.
  • 摘要:在工作中只要牵扯到日期,很大可能都会牵扯到日期的计算格式的转换等用法,这篇文章就是要探讨一下平常在 js和java中对于日期的使用。 java和js中对日期日期字符串的相互转换和使用实例
  • 循环打印日期,遍历日期

    千次阅读 2018-12-12 16:22:56
    需要借助Java中的Calendar这个专门用于对日期进行操作的类,接下来我就简单的对月,天,周进行下遍历。 import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import ...
  • //只有结束时间大于开始时间时才进行查询===改完 list = findDates(beginTime, endTime); System.out.println("时间啊啊啊==" + list); } catch (ParseException e) { e.printStackTrace(); }
  • java计算当前日期后N个工作日的日期

    千次阅读 2019-05-27 09:50:38
    如图,合同中有很多这种日期计算,故封装一通用工具类,记录于此。需求如下: WorkDayUtils如下: package com.sqds.utils; import org.apache.commons.lang.StringUtils; import java.text.SimpleDateFormat...
  • Java 8中表示日期和时间的类有多个,主要的有: Instant:表示时刻,不直接对应年月日信息,需要通过时区转换 LocalDateTime: 表示与时区无关的日期和时间信息,不直接对应时刻,需要通过时区转换 LocalDate:...
  • java日期的操作

    千次阅读 2017-10-23 13:06:14
    import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar;/** * 两个时间差 * * @author Yuk */ public class GetDays { public static void main(Str
  • JAVA日期时间的计算

    万次阅读 2008-05-28 11:18:00
    最近,手头有不少项目,其中就有一个类似公文流转的项目,其中有一个模块是任务的制定,而在任务的类型中有一个循环任务,就是用户输入任务的开始日期、结束日期,还需要输入一个周期数,比如每周的星期几、每月的...
  • Java自动补全日期,空数据为0

    万次阅读 2018-04-18 14:19:21
    查询出结果后放图中发现没有数据的日期并没有那天的数据,图有点不搭。 开始找解决办法,从sql上解决,找了很多之后发现大同小异都是需要建表来关联查询。 那就换种办法,从代码上解决吧。 一开始的数据是这样...
  • Android自定义时间控件选择开始时间到结束时间

    万次阅读 热门讨论 2017-11-30 18:01:28
    一丶效果图 二丶概述 大概是去年的这个时候说要做一个关于时间控件的总结,这会才开始...1.选择开始时间到结束时间 2.结束时间不能超过今天 3.开始时间不能超过结束时间 4.最早选择2017年1月1日 5.仿iOS(表示很无
  • java时间for循环

    千次阅读 2017-08-24 11:52:31
    java时间for循环public static void main(String[] args) { //起始时间 String str="20170805"; //结束时间 String str1="20170810"; SimpleDateFormat format=new SimpleDateFormat("yyyyMMdd"); Calendar ...
  • java基础五:Java分支结构和循环结构
  • 整个时间段为一天的开始至结尾,蓝色为占用的时间段(跨天情况带上日期计算 如2019-10-01 22:00:00-2019-10-02 07:00:00),橙色箭头为需要计算出的时间段 代码实现以一个月为维度,计算当前时间月底的时间段内...
  • Java日期计算常用方法《详细版》

    千次阅读 2021-01-02 20:36:03
    Java日期计算常用方法《详细版》 1、JAVA中日期的获取、设置和格式化 (1)JAVA提供了3个日期类:Date、Calendar和DateFormat。 Date()方法主要用于创建日期对象并获取日期; Calendar()方法主要用于获取和设置日期...
  • 公司最近有个业务,根据开始时间和结束时间,获取中间的月份和天数。 实现起来并不负责,在此做个记录: 封装的返回参数 class DayAndRemain{ private String sdate; private String edate; private int ...
  • 项目上需要按照天、周、月,三个不同的维度来做统计,天的话很好说,都是单独的...map中存放的是需要拆分的时间开始日期和结束日期。 /** * 根据传入的参数,来对日期区间进行拆分,返回拆分后的日期List * ...
  • 八、java 常用日期函数总结

    千次阅读 2012-06-29 18:54:59
    请记得要引入java.util.Date和java.text.SimpleDateFormat两个包  1.计算某一月份的最大天数  Calendar time=Calendar.getInstance();  time.clear();  time.set(Calendar.YEAR,year);  time.set...
  •  * 根据开始时间和结束时间返回时间段内的时间集合  * @param beginDate  * @param endDate  * @return List  * @throws ParseException  */  public static List getDatesBetweenTwoDate(S
  • Java 循环语句练习题(1)

    万次阅读 多人点赞 2016-10-02 20:48:25
    1、for循环输出1 100package com.hz.loop;... * 1、for循环输出1 100 * @author ztw * */ public class Practice01 {public static void main(String[] args) { for(int i=1;i;i++){ System.out.println(i
  • package cn.outofmemory.codes.Date; import java.util.Calendar; import java.util.Date; public class CalendarDemo { public static void main(String[] args) { Calendar calendar=Calen
  • java excel根据起止日期导出

    千次阅读 2016-12-06 17:22:19
    //根据起止日期获取约车记录列表 String fileName = new SimpleDateFormat( "yyyyMMddHHmmssSS" ).format( new Date()); String filenames = "约车记录" + fileName + ".xls" ; try { // 声明一个...
  • 源数据 要达成的结果 SELECT A.Startdate, B.Startdate AS Enddate, isnull(A.orgcode4_name,'') as orgcode4_name, isnull(zige_name,'') as zige_name, isnull(zhizhcode_name,'') as ...isnul

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 33,920
精华内容 13,568
关键字:

java开始日期到结束日期循环

java 订阅