/**
* 日期逻辑
* @param dateStr 日期字符串
* @return
*/
public static String timeLogic(String dateStr) {
Calendar calendar = Calendar.getInstance();
calendar.get(Calendar.DAY_OF_MONTH);
long now = calendar.getTimeInMillis();
Date date = strToDate(dateStr, DATE_FORMAT);
calendar.setTime(date);
long past = calendar.getTimeInMillis();
// 相差的秒数
long time = (now - past) / 1000;
StringBuffer sb = new StringBuffer();
if (time > 0 && time < 60) { // 1小时内
return sb.append(time + "秒前").toString();
} else if (time > 60 && time < 3600) {
return sb.append(time / 60+"分钟前").toString();
} else if (time >= 3600 && time < 3600 * 24) {
return sb.append(time / 3600 +"小时前").toString();
}else if (time >= 3600 * 24 && time < 3600 * 48) {
return sb.append("昨天").toString();
}else if (time >= 3600 * 48 && time < 3600 * 72) {
return sb.append("前天").toString();
}else if (time >= 3600 * 72) {
return dateToString(dateStr, DATE_FORMAT);
}
return dateToString(dateStr, DATE_FORMAT);
}
效果类似这种: