java 时间戳 、时间差计算(秒、分钟、小时、天数、月份、年)
以下代码就是时间差计算(秒、分钟、小时、天数、月份、年)
package me.zhengjie;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.junit.Test;
public class DemoTest {
@Test
public void run1() {
System.out.println("run1()");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
String startDateStr = "2012-01-20 00:00:00.000";
String endDateStr = "2019-11-01 00:00:00.000";
try {
Date startDate = sdf.parse(startDateStr);
Date endDate = sdf.parse(endDateStr);
String timeDifference = this.convert(startDate, endDate);
System.out.println(timeDifference);
} catch (ParseException e) {
e.printStackTrace();
System.out.println("日期格式化失败");
}
}
public String convert(Date startDate,Date endDate) {
long startTime = startDate.getTime();//获取毫秒数
long endTime = endDate.getTime(); //获取毫秒数
long timeDifference = endTime-startTime;
long second = timeDifference/1000; //计算秒
if(second<60) {
return second+"秒前";
}else {
long minute = second/60;
if(minute<60) {
return minute+"分钟前";
}else {
long hour = minute/60;
if(hour<24) {
return hour+"时前";
}else {
long day = hour/24;
if(day<30) {
return day+"天前";
}else {
long month = day/30;
if(month<12) {
return day+"月前";
}else {
long year = month/12;
return year+"年前";
}
}
}
}
}
}
}
linhuaming
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?