根据分钟获取时间(往前获取)、两个日期进行大小比较
/** * 根据分钟获取时间(往前获取) * * @param minute 分钟(正数往前,负数往后) * @return */ public static String getBeforeTime(Integer minute) { Calendar beforeTime = Calendar.getInstance(); beforeTime.add(Calendar.MINUTE, -minute); String time = DateUtils.formatDate(beforeTime.getTime(), "yyyy-MM-dd HH:mm:ss"); return time; }
/** * 两个日期进行比较 * * @param startTime 开始时间 * @param endTime 结束时间 * @return */ public static Boolean compareTime(String startTime, String endTime) { //设置日期格式 SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); try { if (df.parse(startTime).before(df.parse(endTime))) { // 开始日期小于结束日期 return false; } } catch (ParseException e) { e.printStackTrace(); } return true; }
使用示例
// 获取半个小时之后的日期,转化为负数(往后查询) int frequency = ~(Integer.valueOf(30) - 1); // 日期比较大小 boolean result = compareTime(DateUtils.formatDate(batteryDataCollect.getUpdateTime(), "yyyy-MM-dd HH:mm:ss"), getBeforeTime(frequency)); if (!result) { // 后续逻辑处理 }