溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

JAVA怎么求兩個日期的差值

發(fā)布時間:2021-08-23 18:08:22 來源:億速云 閱讀:269 作者:chen 欄目:編程語言

這篇文章主要介紹“JAVA怎么求兩個日期的差值”,在日常操作中,相信很多人在JAVA怎么求兩個日期的差值問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”JAVA怎么求兩個日期的差值”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!


  1. import java.util.Scanner;

  2. class fundemo6{

  3. public static void main(String[] arg){

  4.     Scanner s=new Scanner(System.in);

  5.     System.out.println("Please input first date year:");

  6.     int y1=s.nextInt();

  7.     System.out.println("Please input first date month:");

  8.     int m1=s.nextInt();    

  9.     System.out.println("Please input first date day:");

  10.     int d1=s.nextInt();    

  11.     System.out.println("The first date you input is:"+y1+"-"+m1+"-"+d1);

  12.     System.out.println("Please input second date year:");

  13.     int y2=s.nextInt();

  14.     System.out.println("Please input second date month:");

  15.     int m2=s.nextInt();    

  16.     System.out.println("Please input second date day:");

  17.     int d2=s.nextInt();    

  18.     System.out.println("The second date you input is:"+y2+"-"+m2+"-"+d2);

  19.     System.out.println("sub days of two years is:"+subDays(y1,m1,d1,y2,m2,d2));

  20.     }

  21. public static int getDays(int y,int m,int d){

  22.     int sum=0;

  23.     switch(m-1){

  24.     case 11:sum+=30;

  25.     case 10:sum+=31;

  26.     case 9:sum+=30;

  27.     case 8:sum+=31;

  28.     case 7:sum+=31;

  29.     case 6:sum+=30;

  30.     case 5:sum+=31;

  31.     case 4:sum+=30;

  32.     case 3:sum+=31;

  33.     case 2:if(isLeap(y))

  34.                 sum+=29;

  35.                 else

  36.                 sum+=28;

  37.     case 1:sum+=31;

  38.     }

  39.     sum+=d;

  40.     return sum;

  41.     }

  42. public static boolean isLeap(int y){

  43.     if(y%100!=0&&y%4==0||y%400==0)

  44.         return true;

  45.         return false;

  46. }

  47. public static int otherDays(int y,int m,int d){

  48.     if(isLeap(y))

  49.     return 366-getDays(y,m,d);

  50.     return 365-getDays(y,m,d);

  51. }

  52. public static int subDays(int y1,int m1,int d1,int y2,int m2,int d2){

  53.     if(y1==y1)

  54.         int day1=getDays(y1,m1,d1)-getDays(y2,m2,d2);

  55.     return abs(day1);

  56. }

  57. public static int abs(int n){

  58.     return n>=0?n:-n;

  59. }

  60. }

到此,關(guān)于“JAVA怎么求兩個日期的差值”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI