91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

Android編程實現計算兩個日期之間天數并打印所有日期的方法

發布時間:2020-08-30 18:09:02 來源:腳本之家 閱讀:155 作者:解牛之術 欄目:移動開發

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

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

注:開始時,增加天數時,一天的毫秒數直接用24*60*60*1000來逐步增加天數,再測試時發現,當兩個日期之間的天數超過24天時,打印的日期反而在開始日期之前了,(如打印2016/12/18-2017/1/23,打印的日期反而有2016/12/1),后來發現原因在于24*60*60*1000是一個int值,int值的取值范圍在2的31次方:+/- 2147483648,當超過最大數時,就會變成最小數,這樣反而導致日期變小,將24*60*60*1000變為long類型的值即可: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);
   //計算日期從開始時間于結束時間的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 {//此時在同一天之內
       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:這里再為大家推薦幾款關于日期與時間計算的在線工具供大家參考使用:

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

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

在線陰歷/陽歷轉換工具:
http://tools.jb51.net/bianmin/yinli2yangli

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

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

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

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

泽州县| 九龙县| 潞城市| 万宁市| 庄浪县| 博湖县| 阿合奇县| 黔西县| 东源县| 弋阳县| 赤峰市| 任丘市| 宜章县| 根河市| 望城县| 昔阳县| 定远县| 泾源县| 建昌县| 上饶市| 民丰县| 白山市| 乐安县| 四会市| 普安县| 大邑县| 西安市| 民乐县| 独山县| 叙永县| 延津县| 盐城市| 栾城县| 陇西县| 永福县| 阿尔山市| 秦安县| 合阳县| 永修县| 吴忠市| 鄂伦春自治旗|