java日期之间的比较【项目日常】

2023-10-29

一、  String类中提供了compareTo方法,原理是将字符串转成char[],从char[0]开始进行比较,如果两值不相等,则返回相减的结果。一般将结果与0相比,进行判断,并不关心返回的具体值:

String s1="2022-09-22";
String s2="2022-08-22";
System.out.println(s1.compareTo(s2));   //结果:1
System.out.println(s2.compareTo(s1));   //结果:-1     相等时 结果为 0

          使用此方式需要两个日期格式相同,如 :2020-01-01与2020-05-05。如果格式不同,比如2020/01/01,则可能会影响最终结果。

二、可以将String类日期通过SimpleDateFormat转化成Date类型,再使用Date的compareTo方法判断。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String now =  "2022-09-09";
String end =  "2021-09-09";
Date nowDate = sdf.parse(now);
Date endDate = sdf.parse(end);
System.out.println(nowDate.compareTo(endDate));    //结果:1
Date  date01=new Date();
Date  date02=new Date();
int va = date01.compareTo(date02);

如果  date01>date02        va=1;
     date01=date02        va=0;
     date01<date02        va=-1;

三、Date中提供了getTime方法,该方法的返回值是自1970-01-01 00:00:00到指定日期间的毫秒数,返回值类型为long。通过比较毫秒数大小,同样可以比较时间的大小。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
long time1 = sdf.parse("2021-9-9").getTime();
long time2 = sdf.parse("2022-9-9").getTime();
System.out.println(time2>time1);            //true
System.out.println(time1>time2);            //false

个人比较推荐直接用String字符串比较即可,因为这样很方便,不用再做转换工作;

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java日期之间的比较【项目日常】 的相关文章

随机推荐

  • SpringBoot中如何整合Swagger2呢?

    转自 SpringBoot中如何整合Swagger2呢 下文笔者讲述SpringBoot中整合Swagger2的方法分享 如下所示 Swagger简介 Swagger用于自动生成Restful接口说明文档工具 在前后端分离时 后端可直接使用
  • Java字符串的字符进行排序

    要求 对 abc fcc egfd asd rtgh deghk fcc 字段进行排序 要求满足其为升序排列同时每个字符串里也是升序排列 思路 方法1 冒泡排序 思路 先获取字符串数组里的每个字符串 然后使用toCharArray 方法得到
  • 详解停车位检测论文:Attentional Graph Neural Network for Parking-slot Detection

    本文介绍一篇注意力图神经网络用于停车位检测论文 论文已收录于 RA L2021 在之前的基于卷积神经网络的停车位检测方法中 很少考虑停车位标记点之间的关联信息 从而导致需要复杂的后处理 在本文中 作者将环视图中的标记点看作图结构数据 使用图
  • Pyspark案例综合(数据计算)

    数据计算 map方法 map算子 map算子 成员方法 接受一个处理函数 可用lambda快速编写 对RDD内的元素一一处理 返回RDD对象 链式调用 对于返回值是新的RDD的算子 可以通过链式调用的方式多次调用算子 演示RDD的map成员
  • IE命令行参数

    Windows Internet Explorer includes several command line options that enable you to troubleshoot and configure the browse
  • Chrome开发者工具详解(一)

    Chrome开发者工具详解 一 前言 一 打开开发者工具方法 二 面板常用方法 1 Elements面板 2 Network 面板 总结 前言 Chrome浏览器中内置了一套强大的开发者工具 学会使用Chrome开发者工具对web网站进行静
  • window10下conda使用报错:An unexpected error has occurred. Conda has prepared the above report.

    在我使用anaconda3创建环境 跑实验时 把镜像三搞两搞 搞出了问题 卡死了 An unexpected error has occurred Conda has prepared the above report 网上找了好多方法都没
  • 百度2015年系统工程师笔试题:设计一个小程序来判断当前机器的字节序怕【详解】

    目录 设计思路 代码实现 设计思路 首先 我们要了解需要判断的东西是什么 这就需要我们了解大小端的概念 大端 存储 模式 是指数据的低位保存在内存的高地址中 而数据的高位 保存在内存的低地址 中 小端 存储 模式 是指数据的低位保存在内存的
  • linux globbing文件通配符

    在linux中使用ls cp mv rm等命令时可以使用文件通配符匹配操作多个文件 匹配模式 匹配任意长度的任意字符 匹配任意单个字符 匹配指定范围内的任意单个字符 文件通配不区分字母的大小写 匹配非制定范围内的任意单个字符 特殊格式 up
  • 使用jsoup爬取小说

    1 开局扯犊子 最近正在学习Java爬虫技术 于是乎接触到了jsoup这个东西 继爬取美女图片后的第二个小项目 爬取笔趣阁小说 2 页面分析 首先我们进入笔趣阁选择一本喜欢的小说 f12后拿到他的title与每一章的地址 然后我们继续分析进
  • 【Hive】Hive元数据库介绍及信息查看

    转载 dabokele 在安装Hive时 需要在hive site xml文件中配置元数据相关信息 与传统关系型数据库不同的是 hive表中的数据都是保存的HDFS上 也就是说hive中的数据库 表 分区等都可以在HDFS找到对应的文件 这
  • 冒泡排序 例题:给出一组数将这组数按从小到大的顺序输出出来

    冒泡排序 例题 给出一组数将这组数按从小到大的顺序输出出来 学习笔记 方便自己日后复习 也可供大家参考学习 冒泡排序百度上是这样定义的 冒泡排序 它重复的走访过要排序的元素列 依次比较两个相邻元素 如果他们的顺序 如从大到小 首字母从A到Z
  • 进程和线程的区别和联系

    一 简介 进程 进程是操作系统资源分配的基本单位 进程是指正在运行的程序实例 每个进程都有自己的内存空间 代码 数据和资源 操作系统通过管理进程来控制计算机的资源分配 每个进程都有一个唯一的标识符 称为进程 ID 以便操作系统可以识别和管理
  • NCCL error in: , unhandled system error

    今天pytorch分布式跑代码的时候出现 RuntimeError NCCL error in opt conda conda bld pytorch 1614378083779 work torch lib c10d ProcessGro
  • Vue脚手架的创建

    首先创建脚手架 初始化脚手架 Vue脚手架 是Vue官方提供的标准化开发工具 开发平台 Vue CLI 1 配置npm 2 全局安装 vue cli npm install g vue cli 3 切换到创建项目的目录 使用命令创建项目 v
  • Open3D 点云DBSCAN密度聚类并保存聚类结果

    目录 一 算法原理 1 密度聚类 2 主要函数 3 参考文献 二 代码实现 三 结果展示 1 保存聚类 2 可视化 一 算法原理 1 密度聚类 密度聚类是将簇定义为密度相连的点的最大集合 能够把具有足够高密度的区域划分为簇 并可在噪声的空间
  • 并行编程OpenCL-矩阵相加

    并行编程OpenCL 矩阵相加 1 host端代码 include
  • springboot之mybatis进阶

    springboot之mybatis进阶 简介 CRUD标签 select insert update delete resultMap sql片段 动态sql if choose when otherwise where 和set for
  • 关于使用SSM框架搭建的项目的运行方法

    目录 运行环境配置 1 安装 IDEA 开发工具 中文版设置 JDK直接下载 2 安装 MYSQL 数据库 2 1 下载安装 2 2 配置环境变量 2 4 安装 MySQL 2 4 进入 MySQL 2 5 常见问题 3 安装Tomcat
  • java日期之间的比较【项目日常】

    一 String类中提供了compareTo方法 原理是将字符串转成char 从char 0 开始进行比较 如果两值不相等 则返回相减的结果 一般将结果与0相比 进行判断 并不关心返回的具体值 String s1 2022 09 22 St