這篇文章運用簡單易懂的例子給大家介紹如何通過Java計算兩個日期的時間差來算出天數,代碼非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
創新互聯專注于英吉沙企業網站建設,響應式網站,商城網站建設。英吉沙網站建設公司,為英吉沙等地區提供建站服務。全流程定制網站,專業設計,全程項目跟蹤,創新互聯專業和態度為您提供的服務
一、算出日期的天數
代碼實現:
public static void main(String[] args) throws Exception { String inTime="2020-6-20 11:30:00";//入住時間 String outTime="2020-6-25 15:40:00";//退房時間 //1.先算 年月日 的天數 SimpleDateFormat sdf1 =new SimpleDateFormat("yyyy-MM-dd");//年月日 Date inDate=sdf1.parse(inTime);//獲取入住時間的年月日 Date outDate=sdf1.parse(outTime);//獲取退房時間的年月日 Calendar c1=Calendar.getInstance(); c1.setTime(inDate);//把獲取的入住時間年月日放入Calendar中 Calendar c2=Calendar.getInstance(); c2.setTime(outDate);//把獲取的退房時間年月日放入Calendar中 //算出天數 int days = c2.get(Calendar.DAY_OF_YEAR) - c1.get(Calendar.DAY_OF_YEAR);// System.out.println("天數是:"+days); }
二、算出時分秒的時間差=天數
(視頻教程推薦:java視頻教程)
代碼實現:
public static void main(String[] args) throws Exception { String inTime="2020-6-20 11:30:00";//入住時間 String outTime="2020-6-25 15:40:00";//退房時間 //1.先算 年月日 的天數 SimpleDateFormat sdf1 =new SimpleDateFormat("yyyy-MM-dd");//年月日 Date inDate=sdf1.parse(inTime);//獲取入住時間的年月日 Date outDate=sdf1.parse(outTime);//獲取退房時間的年月日 Calendar c1=Calendar.getInstance(); c1.setTime(inDate);//把獲取的入住時間年月日放入Calendar中 Calendar c2=Calendar.getInstance(); c2.setTime(outDate);//把獲取的退房時間年月日放入Calendar中 //算出 int days = c2.get(Calendar.DAY_OF_YEAR) - c1.get(Calendar.DAY_OF_YEAR);// System.out.println("天數是:"+days); //2.算出時分秒再++ //算出退房時間是否小12:00:00的時間差 如果大于12:00:00 天數就++ SimpleDateFormat sdf2=new SimpleDateFormat("HH:mm:ss");//時分秒 long time1=sdf2.parse(outTime.split("\\ ")[1]).getTime();//獲取退房時分秒 注意 split("\\ ")要有空格 long time2=sdf2.parse("12:00:00").getTime();//固定12:00:00 long timecha= time1-time2; if(timecha>0){ days++; } System.out.println("總天數:"+days); }
關于如何通過Java計算兩個日期的時間差來算出天數就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
網站名稱:如何通過Java計算兩個日期的時間差來算出天數
文章源于:http://vcdvsql.cn/article26/jhidcg.html
成都網站建設公司_創新互聯,為您提供網站改版、營銷型網站建設、網站策劃、、品牌網站設計、外貿網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯