小编典典

您可以像这样逐个比较价值

d1.getDate().equals(d2.getDate()) &&

d1.getYear().equals(d2.getYear()) &&

d1.getMonth().equals(d2.getMonth())

要么

Date date1 = new Date(d1.getYear(), d1.getMonth(), d1.getDate());

Date date2 = new Date(d2.getYear(), d2.getMonth(), d2.getDate());

date1.compareTo(date2);

如果您使用Date类,请考虑改用Calendar类这是最优雅的解决方案,为此使用Calendar和Comparator

public class CalendarDateWithoutTimeComparator implements Comparator {

public int compare(Calendar cal1, Calendar cal2) {

if(cal1.get(Calendar.YEAR) != cal2.get(Calendar.YEAR)) {

return cal1.get(Calendar.YEAR) - cal2.get(Calendar.YEAR);

} else if (cal1.get(Calendar.MONTH) != cal2.get(Calendar.MONTH)) {

return cal1.get(Calendar.MONTH) - cal2.get(Calendar.MONTH);

}

return cal1.get(Calendar.DAY_OF_MONTH) - cal2.get(Calendar.DAY_OF_MONTH);

}

}

用法:

Calendar c1 = Calendar.getInstance();

Calendar c2 = Calendar.getInstance();

// these calendars are equal

CalendarDateWithoutTimeComparator comparator = new CalendarDateWithoutTimeComparator();

System.out.println(comparator.compare(c1, c2));

List list = new ArrayList();

list.add(c1);

list.add(c2);

Collections.sort(list, comparator);

2020-11-26

java 怎么比较两个日期_如何在Java中比较两个日期?相关推荐

  1. python一行输出多个数据_如何在Python中让两个print()函数的输出打印在一行内?

    1.两个连续的print()函数为什么在输出时内容会分行显示? 解:print()中有两个默认参数sep和end,其中sep是代替分隔符,end是代替末尾的换行符,默认使用','代替空格,且默认末尾加 ...

  2. java 合并两个列表_如何在Java中合并两个列表?

    java 合并两个列表 Merging two lists in Java is often a useful operation. These lists can be ArrayLists or ...

  3. java 反射父类私有属性值_如何在Java中通过反射访问父类的父类的私有字段? - java...

    在一个API中,我使用的是一个抽象类(A类),该类具有一个私有字段(A.privateField). B类在API中扩展了A类. 我需要扩展B类的实现,即C类,但是我需要A类的privateField ...

  4. python 两个列表比较_如何在Python中比较两个列表

    python 两个列表比较 In this article, we will understand the different ways to compare two lists in Python. ...

  5. java对象如何保存日期_如何在Java中的日期对象中存储和检索毫秒?

    我正在制作一个读取字幕(.srt)文件的基本Java程序,我想将每次存储为Date对象.我真的只需要跟踪小时,分钟,秒和毫秒(到3位数).我想我能用这个存储它: String start = &quo ...

  6. netbeans java项目_如何在NetBeans中组合两个Java项目

    我使用NetBeans为我的Java类创建了两个独立的项目 . 最终,我想把两者结合起来 . 我希望他们俩都在同一个输出窗口上播放 . 一个项目是使用JavaFX创建的,一个是Java应用程序 . J ...

  7. python两个时间内的工作日_如何在Python中找到两个日期之间的星期一或任何其他工作日的数目?...

    这是高效的-即使在开始和结束之间有一万天的时间-而且仍然非常灵活(它在sum函数内最多迭代7次):def intervening_weekdays(start, end, inclusive=True ...

  8. java从数组查找指定整数_如何在Java中使用重复项查找整数数组中的K个缺失数字?...

    java从数组查找指定整数 自从我讨论任何编码或算法面试问题以来已经有很长时间了,因此我想重新考虑一种最流行的基于数组的编码问题,即在给定数组中查找缺失的数字. 在进行编程工作面试之前,您可能已经听说 ...

  9. java 检测目录下的文件_如何在Java中检查文件是目录还是文件

    java 检测目录下的文件 java.io.File class contains two methods using which we can find out if the file is a d ...

最新文章

  1. swift3.0提示框新用法
  2. 精美的电路图都是怎么画出来的?
  3. NeurIPS | 2019 机器学习领域最新十篇论文,来自谷歌、Facebook、普林斯顿大学、斯坦福大学等团队的最新研究成果...
  4. php读取zip文件,php如何读取zip内容?(zip_entry_read函数的使用)
  5. hdu5386(暴力)
  6. matlab 与dsp联合仿真,matlab和DSP联合开发前景很大?
  7. 一个亿的融资在一家芯片初创公司可以烧多久?
  8. react form表单 input和textarea用法
  9. 花书+吴恩达深度学习(十六)序列模型之双向循环网络 BRNN 和深度循环网络 Deep RNN
  10. LINUX 第七章 Squid配置
  11. 有关c#.net“无法加载 CSOpenGLC.dll:找不到指定的模块”的问题解决办法
  12. 备份Foxmail7.2邮箱
  13. Prototype两个常用监听器
  14. 【渝粤教育】国家开放大学2018年春季 3819-21T燃气安全管理 参考试题
  15. 气象要素色斑图的配色
  16. Volley 源码解析(一)
  17. Reflex.XTR-ISO 1CD(模型模拟飞行器)
  18. SSIS 左边工具栏消失处理
  19. hdu6638 Snowy Smile (最大权值和矩阵、线段树)
  20. lol-----寒冰射手-----艾希

热门文章

  1. java3.3-3.6类与对象2020.3.13
  2. 随机数据的构造与使用
  3. HDU1878 欧拉回路
  4. 读盘写盘计算机里面的意义,什么叫计算机里的写盘
  5. vsc提示只有一行_Solution:连续调用BAPI出错,以及BAPI提示成功但数据库没有数据...
  6. 中间件系列「三」netty之NIO基础
  7. 使用R语言绘制层次聚类热图
  8. oracle中序列号的使用
  9. JAVA——Tess4J简单的图像识别DEMO
  10. PHP——访问网站根目录解决方案