JAVA 日期时间比较

JAVA 日期时间比较

  • SimpleDateFormatformat方法将日期型转化成时间或日期的字符串,然后再比较字符串。

String startTimeStr = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss:SSS").format(new Date());//2018-08-13 10:22:48.883

String endTimeStr = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss:SSS").format(new Date());//2018-08-13 10:22:49.225

字符串时间比较大小

  • date.getTime()
  1. 相加减或直接比较用大于小于号比较

Date startTime= df.parse(startTimeStr);

Date endTime= df.parse(endTimeStr);

if (startTime.getTime() > endTime.getTime()) {

        return true;// startTime在endTime前

}

  1. compareTo

compareTo() 方法用于将 Number 对象与方法的参数进行比较。可用于比较 Byte, Double, Integer, Float, Long Short 等。该方法用于两个相同数据类型的比较,两个不同类型的数据不能用此方法来比较。

10.compareTo(3);//返回值1

3.compareTo(3);//返回值0

2.compareTo(3);//返回值-1

返回值:如果指定的数与参数相等返回0,如果指定的数小于参数返回 -1。如果指定的数大于参数返回 1。

  • Date  after\before\equals直接比较

1、after:返回值 true如果代表Date对象是严格迟于when表示的时刻; 否则为false。

  if (startTime.after(endTime)){

   //表示startTime晚于endTime

  }else{

   --反之

        }

2、before:返回值 true如果Date对象在when表示的时刻之前,否则为false。

  if (startTime.before(endTime)){

   //表示startTime早于endTime

  }else{

   --反之

        }

 

你可能感兴趣的:(JAVA)