对给定的两个日期之间的日期进行遍历

news/2024/11/24 14:03:55/

每日一练:对给定的两个日期之间的日期进行遍历

题目

对给定的两个日期之间的日期进行遍历,比如startTime是2014-07-11;endTime是2014-08-11 如何把他们之间的日期获取并遍历出来。

在这里插入图片描述

思路与分析

不难看出,选项的4段实现代码中,除了日期这个判断条件不同外,主体实现是一样的。
因startDate须在endDate之前,且两日期不能相等,故选A。

!startDate.before(endDate)
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;public class SplitTime {private static List<Date> dateSplit(Date startDate, Date endDate) throws Exception {if (!startDate.before(endDate)) throw new Exception("开始时间应在结束时间之后");Long spi = endDate.getTime() - startDate.getTime();Long step = spi / (24 * 60 * 60 * 1000);List<Date> dateList = new ArrayList<Date>();dateList.add(endDate);for (int i = 1; i <= step; i++) {dateList.add(new Date(dateList.get(i - 1).getTime() - (24 * 60 * 60 * 1000)));}return dateList;}public static void main(String[] args) throws ParseException {try {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Date start = sdf.parse("2014-7-11");Date end = sdf.parse("2014-8-11");List<Date> lists = dateSplit(start, end);if (!lists.isEmpty()) {for (Date date : lists) {System.out.println(sdf.format(date));}}} catch (Exception e) {}}
}

本题考察的是对Date API before函数的使用。

在这里插入图片描述
在这里插入图片描述

[2023年07月05日22时37分28秒_]在此记录与总结。

================


http://www.ppmy.cn/news/741495.html

相关文章

CentOS 2 3 4 5 6 等历史老版本下载地址 国内镜像地址

centos-vault安装包下载_开源镜像站-阿里云 Index of /centos-vault/ File NameFile SizeDateParent directory/--2.1/-2009-08-19 09:363.1/-2005-08-01 00:053.3/-2005-03-17 19:173.4/-2005-03-01 09:383.5/-2005-07-29 00:143.6/-2006-04-05 00:593.7/-2006-05-06 09:203…

IntelliJ IDEA 恢复出厂设置

引言 如果你不小心修改了设置&#xff0c;导致出现问题且不知道解决办法&#xff0c;可以尝试恢复出厂设置 IDEA 恢复出厂设置 IDEA 2021 之后&#xff0c; 在顶部工具栏&#xff0c;选择 File | Manage IDE Settings | Restore Default Settings. 或者&#xff0c; 双击 …

el-dialog 层级问题混乱

使用 element -UI 的弹窗时&#xff0c;一般来说弹窗的层级应该比较高&#xff0c;背景置灰。 下边这个弹窗是正常情况下的&#xff1a; 有时候出现这样的情况&#xff1a; 解决问题&#xff1a; 只需要 在标签里边添加 append-to-body 属性问题就解决了。

uniApp:路由与页面跳转及传参

方式一&#xff1a;声明式导航 声明式导航&#xff0c;通过组件进行跳转。官方文档&#xff1a;详情 使用 navigator 组件进行页面跳转。 属性类型默认值说明urlString应用内的跳转链接&#xff0c;值为相对路径或绝对路径&#xff0c;如&#xff1a;“…/first/first”&#x…

root密码忘记解决方法

CentOS 7 root密码的重置方式和CentOS 6完全不一样&#xff0c;CentOS 7与之前的版本6变化还是比较大的&#xff0c;以进入单用户模式修改root密码为例。 1.重启开机按esc 2.按e 3.编辑修改两处&#xff1a;ro改为rw,在LANGen_US.UFT-8后面添加init/bin/sh 4.按CtrlX重启&…

ulock 密码忘记如何破解?

最近更新&#xff1a;2022.07.15 演示版本&#xff1a;Win10系统 点击【查看】&#xff0c;勾选“文件扩展名”、“隐藏的项目”。 点击【查看】→【选项】&#xff0c;打开【文件夹选项弹出】&#xff0c;选择【查看】&#xff0c;取消勾选“隐藏受保护的操作系统文件”&…

iPhone解锁密码忘了,指纹识别也用不了 -- 恢复iPhone吧

结果&#xff1a;手机app都不见&#xff0c;只有系统的&#xff0c;系统也是最新版&#xff0c;不过相册内容还在。 步骤&#xff1a; iTunes – win版和mac版都可以。 下面演示mac版 1.手机关机&#xff0c;数据线与电脑连着&#xff0c;电脑打开iTunes。 2.手机按着home…

mysql密码忘了咋办,密码重置过程

mysql密码忘了咋办&#xff0c;密码重置过程 步骤1修改配置文件免密进入2:重启mysql服务:3:进入mysql修改密码4:重置修改过的内容 步骤 以下为windows系统&#xff0c;linux系统思路也适用 一直都用服务器的mysql,太久没用本地mysql&#xff0c;又又忘密码了&#xff0c;重置一…