public static void main(String[] args){
System.out.println(getShowTime("2019-02-14 08:39:32"));
}
public static String getShowTime(String startTime){
String showTime="";
SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String endTime=sd.format(new Date());
long nd = 1000 * 24 * 60 * 60;// 一天的毫秒数
long nh = 1000 * 60 * 60;// 一小时的毫秒数
long nm = 1000 * 60;// 一分钟的毫秒数
//long ns = 1000;// 一秒钟的毫秒数
long diff;
double day = 0;
double hour = 0;
double min = 0;
// 获得两个时间的毫秒时间差异
try {
diff = sd.parse(endTime).getTime() - sd.parse(startTime).getTime();
day = diff / nd;// 计算差多少天
hour = diff % nd / nh + day * 24;// 计算差多少小时
min = diff % nd % nh / nm + day * 24 * 60;// 计算差多少分钟
} catch (ParseException e) {
e.printStackTrace();
}
if(day>0){
if(day>=1){
showTime=startTime.substring(0, 16);
}else{
showTime="昨天 "+startTime.substring(11, 16);
}
}else{
Boolean dayDate=startTime.substring(8, 10).equals(endTime.substring(8, 10));
System.out.println(dayDate);
if(!dayDate){
showTime="昨天 "+startTime.substring(11, 16);
}else{
if(hour>0){
showTime="今天 "+startTime.substring(11, 16);
}else{
if(min>=3){
showTime=(int)min+"分钟前";
}else{
showTime="刚刚";
}
}
}
}
return showTime;
}