Java.util.Date API

CompareTo()

为比较日期时间而苦恼?Java.uitl.Date一招解决!_java

这是Date对象的 * CompareTo() * 方法的API官方说明文档,具体API使用方法,如文档所述。

public class DateUtil {

    public static Boolean compareDate(String startTime, String endTime) {

        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        try {

            Date start = format.parse(startTime);
            Date end = format.parse(endTime);

            // real == 1:start > end;
            // real == -1 / 0: start <= end;
            int real = start.compareTo(end);

            return real > 0;

        } catch (ParseException e) {

            e.printStackTrace();

            return null;

        }

    }

}

注意传入的字符串要与SimpleDateFormat的转换格式匹配。

下面举例说明:

    @Test
    public void compare() {

        // 格式为:yyyy-MM-dd HH:mm:ss
        String start = "2019-10-25 09:00:00";

        String end = "2019-10-25 10:00:00";

        Boolean real = DateUtil.compareDate(start, end);

        if (real != null) {

            if (!real) {

                logger.info("judge successful.");

            } else {

                logger.info("judge failed!!");

            }

        } else {

            logger.info("There are some error.");

        }

    }

Result:
为比较日期时间而苦恼?Java.uitl.Date一招解决!_java.unitl.Date_02
解决!