成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Android編程實現(xiàn)計算兩個日期之間天數(shù)并打印所有日期的方法

本文實例講述了Android編程實現(xiàn)計算兩個日期之間天數(shù)并打印所有日期的方法。分享給大家供大家參考,具體如下:

為桑珠孜等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及桑珠孜網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站設(shè)計、做網(wǎng)站、桑珠孜網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

以下代碼是計算兩個日期之間的天數(shù),并打印所有日期

注:開始時,增加天數(shù)時,一天的毫秒數(shù)直接用24*60*60*1000來逐步增加天數(shù),再測試時發(fā)現(xiàn),當兩個日期之間的天數(shù)超過24天時,打印的日期反而在開始日期之前了,(如打印2016/12/18-2017/1/23,打印的日期反而有2016/12/1),后來發(fā)現(xiàn)原因在于24*60*60*1000是一個int值,int值的取值范圍在2的31次方:+/- 2147483648,當超過最大數(shù)時,就會變成最小數(shù),這樣反而導(dǎo)致日期變小,將24*60*60*1000變?yōu)閘ong類型的值即可:private long static final long ONE_DAY_MS=24*60*60*1000

/**
* 計算兩個日期之間的日期
* @param startTime
* @param endTime
*/
private void betweenDays(long startTime,long endTime,long mills_select,int code){
   Date date_start=new Date(startTime);
   Date date_end=new Date(endTime);
   //計算日期從開始時間于結(jié)束時間的0時計算
   Calendar fromCalendar = Calendar.getInstance();
   fromCalendar.setTime(date_start);
   fromCalendar.set(Calendar.HOUR_OF_DAY, 0);
   fromCalendar.set(Calendar.MINUTE, 0);
   fromCalendar.set(Calendar.SECOND, 0);
   fromCalendar.set(Calendar.MILLISECOND, 0);
   Calendar toCalendar = Calendar.getInstance();
   toCalendar.setTime(date_end);
   toCalendar.set(Calendar.HOUR_OF_DAY, 0);
   toCalendar.set(Calendar.MINUTE, 0);
   toCalendar.set(Calendar.SECOND, 0);
   toCalendar.set(Calendar.MILLISECOND, 0);
   int s = (int) ((toCalendar.getTimeInMillis() - fromCalendar.getTimeInMillis())/ (ONE_DAY_MS));
   if(s>0){
     for(int i = 0;i<=s;i++){
       long todayDate = fromCalendar.getTimeInMillis() + i * ONE_DAY_MS;
       /**
        * yyyy-MM-dd E :2012-09-01
        */
       Log.i("打印日期",Utils.getCustonFormatTime(todayDate,"yyyy-MM-dd"));
     }
   }else {//此時在同一天之內(nèi)
       Log.i("打印日期",Utils.getCustonFormatTime(startTime,"yyyy-MM-dd"));
   }
}

Utils.getCustonFormatTime()方法代碼如下:

/**
* 格式化傳入的時間
*
* @param time   需要格式化的時間
* @param formatStr 格式化的格式
* @return
*/
public static String getCustonFormatTime(long time, String formatStr) {
    SimpleDateFormat format = new SimpleDateFormat(formatStr);
    Date d1 = new Date(time);
    return format.format(d1);
}

PS:這里再為大家推薦幾款關(guān)于日期與時間計算的在線工具供大家參考使用:

在線日期/天數(shù)計算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi

在線萬年歷日歷:
http://tools.jb51.net/bianmin/wannianli

在線陰歷/陽歷轉(zhuǎn)換工具:
http://tools.jb51.net/bianmin/yinli2yangli

Unix時間戳(timestamp)轉(zhuǎn)換工具:
http://tools.jb51.net/code/unixtime

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android日期與時間操作技巧總結(jié)》、《Android開發(fā)入門與進階教程》、《Android基本組件用法總結(jié)》、《Android視圖View技巧總結(jié)》、《Android布局layout技巧總結(jié)》及《Android控件用法總結(jié)》

希望本文所述對大家Android程序設(shè)計有所幫助。

當前文章:Android編程實現(xiàn)計算兩個日期之間天數(shù)并打印所有日期的方法
分享鏈接:http://jinyejixie.com/article24/jjhgce.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機、網(wǎng)站策劃、App開發(fā)、企業(yè)建站、小程序開發(fā)、網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護公司
湘乡市| 安仁县| 广水市| 沂南县| 高青县| 海阳市| 车险| 黔江区| 沾益县| 罗城| 汤阴县| 吉木乃县| 宜黄县| 福鼎市| 阳西县| 思茅市| 谢通门县| 且末县| 万源市| 略阳县| 涪陵区| 灵宝市| 循化| 巍山| 叶城县| 无棣县| 曲周县| 宣恩县| 华池县| 中山市| 澄江县| 肥乡县| 松溪县| 庆云县| 聂荣县| 陇西县| 任丘市| 丽水市| 政和县| 马鞍山市| 永善县|