激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|編程技術|正則表達式|

服務器之家 - 編程語言 - JAVA教程 - 利用Java中Calendar計算兩個日期之間的天數和周數

利用Java中Calendar計算兩個日期之間的天數和周數

2020-07-15 12:55Inovation_Sky JAVA教程

Java 語言的Calendar(日歷),Date(日期),和DateFormat(日期格式)組成了Java標準的一個基本但是非常重要的部分。日期是商業邏輯計算一個關鍵的部分。下面這篇文章就給大家介紹了如何利用Java中Calendar計算兩個日期之間的天數和周數,下面

前言

究竟什么是一個 Calendar 呢?中文的翻譯就是日歷,那我們立刻可以想到我們生活中有陽(公)歷、陰(農)歷之分。它們的區別在哪呢?

比如有:

月份的定義 - 陽`(公)歷 一年12 個月,每個月的天數各不同;陰(農)歷,每個月固定28天

每周的第一天 - 陽(公)歷星期日是第一天;陰(農)歷,星期一是第一天

實際上,在歷史上有著許多種紀元的方法。它們的差異實在太大了,比如說一個人的生日是"八月八日" 那么一種可能是陽(公)歷的八月八日,但也可以是陰(農)歷的日期。所以為了計時的統一,必需指定一個日歷的選擇。那現在最為普及和通用的日歷就是 "Gregorian Calendar"。也就是我們在講述年份時常用 "公元幾幾年"。Calendar 抽象類定義了足夠的方法,讓我們能夠表述日歷的規則。Java 本身提供了對 "Gregorian Calendar" 規則的實現。我們從 Calendar.getInstance() 中所獲得的實例就是一個 "GreogrianCalendar" 對象(與您通過 new GregorianCalendar() 獲得的結果一致)。下面話不多說了,來看看本文的正文吧。

利用java中Calendar類計算出兩個日期之間的天數和周數的算法!

計算出日期之間的天數:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public Object countTwoDate(Object startDate, Object endDate)
 {
  if(StringUtils.isNotEmpty(startDate) && StringUtils.isNotEmpty(endDate))
  {
   Date start=(Date)startDate;
   Date end = (Date)endDate;
   Calendar cal=Calendar.getInstance();
   cal.setTime(start);
   long time1=cal.getTimeInMillis();
   cal.setTime(end);
   long time2=cal.getTimeInMillis();
   long between_days=(time2-time1)/(1000*3600*24);
   return Integer.parseInt(String.valueOf(between_days));
  }
  return null;
 }

再計算出周數:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
public Object countTwoDayWeek(Object startDate, Object endDate)
 {
  if(StringUtils.isNotEmpty(startDate) && StringUtils.isNotEmpty(endDate))
  {
   Date start=(Date)startDate;
   Date end = (Date)endDate;
   Calendar cal=Calendar.getInstance();
   cal.setTime(start);
   long time1=cal.getTimeInMillis();
   cal.setTime(end);
   long time2=cal.getTimeInMillis();
   long between_days=(time2-time1)/(1000*3600*24);
   Double days=Double.parseDouble(String.valueOf(between_days));
   if((days/7)>0 && (days/7)<=1){
    //不滿一周的按一周算
    return 1;
   }else if(days/7>1){
    int day=days.intValue();
    if(day%7>0){
     return day/7+1;
    }else{
     return day/7;
    }
   }else if((days/7)==0){
    return 0;
   }else{
    //負數返還null
    return null;
   }
  }
  return null;
 }

總結

以上就是利用Java中的Calendar計算兩個日期之間天數和周數的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久草干| 久久久www视频 | 日本精品久久久久 | 国产精品久久久久久久久久妇女 | 99久久久精品视频 | 永久在线观看电影 | 美女黄视频在线观看 | 欧美人人干| 成人一区二区三区在线 | 国内精品视频饥渴少妇在线播放 | 91精品国啪老师啪 | 激情小说另类 | 中文字幕在线观看国产 | 午夜精品在线视频 | 欧美一级淫片免费视频黄 | 欧美成人三级视频 | 久久久av影视 | 91在线视频观看 | 国产精品久久久久久久久久尿 | 免费国产在线观看 | 午夜精品小视频 | 香蕉视频h | 欧美成年性h版影视中文字幕 | japan护士性xxxⅹhd | 国产亚洲精品美女久久久 | 日本在线视频一区二区三区 | www.91pron| 午夜精品福利视频 | www久久国产| 性欧美日本| 亚洲精品a在线观看 | 亚洲尻逼视频 | 欧美黄色小视频 | 久久新网址 | 久久第四色| 夏目友人帐第七季第一集 | 国产精品观看在线亚洲人成网 | 日日草夜夜 | 亚洲精品久久久久久久久久久 | 黄色视屏免费在线观看 | 欧美一级网址 |