java中Date日期类型的大小比较

举报
别团等shy哥发育 发表于 2023/03/03 00:18:16 2023/03/03
2.4k+ 0 0
【摘要】 @[toc] 方法一:CompareTo()调用CompareTo(Date anotherDate)方法,API如下:public int compareTo(Date anotherDate)参数:anotherDate—要比较的Date结果:如果参数Date等于此Date,则值为0 ; 如果此日期在Date参数之前,该值小于0 ; 如果此日期在Date参数0则值大于0异常:NullPo...

@[toc]

方法一:CompareTo()

调用CompareTo(Date anotherDate)方法,API如下:

public int compareTo(Date anotherDate)
  • 参数:anotherDate—要比较的Date
  • 结果:如果参数Date等于此Date,则值为0 ; 如果此日期在Date参数之前,该值小于0 ; 如果此日期在Date参数0则值大于0
  • 异常:NullPointerException - 如果 anotherDate为空。
String date1="2020-10-23";
		String date2="2019-11-22";
		//转换格式
		SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
		//[1]调用compareTo()方法
		try {
			Date date3=sdf.parse(date1);
			Date date4=sdf.parse(date2);
			switch(date3.compareTo(date4)) {
			case 1:
				System.out.println("大于");
				break;
			case 0:
				System.out.println("相等");
				break;
			case -1:
				System.out.println("小于");
				break;
			}
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

大于

方法二:getTime()

通过getTime()方法的毫秒值判断

public long getTime()
  • 说明:返回自1970年1月1日以来,由 Date对象表示的00:00:00 GMT的毫秒 数 。
String date1="2020-10-23";
		String date2="2019-11-22";
		//转换格式
		SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
		try {
			Date date3=sdf.parse(date1);
			Date date4=sdf.parse(date2);
			
			long time1= date3.getTime();
			long time2=date4.getTime();
			System.out.println(time1+"\n"+time2);
			System.out.println(time1>time2);
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

1603382400000
1574352000000
true

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。