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

2023-02-25 17:14:20 浏览数 (1)

文章目录

    • 方法一:CompareTo()
    • 方法二:getTime()

方法一:CompareTo()

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

代码语言:javascript复制
public int compareTo(Date anotherDate)
  • 参数:anotherDate—要比较的Date
  • 结果:如果参数Date等于此Date,则值为0 ; 如果此日期在Date参数之前,该值小于0 ; 如果此日期在Date参数0则值大于0
  • 异常:NullPointerException - 如果 anotherDate为空。
代码语言:javascript复制
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()方法的毫秒值判断

代码语言:javascript复制
public long getTime()
  • 说明:返回自1970年1月1日以来,由 Date对象表示的00:00:00 GMT的毫秒 数 。
代码语言:javascript复制
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

0 人点赞