国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

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

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - JAVA時間日期處理類實例

JAVA時間日期處理類實例

2019-12-16 13:35MagicYK JAVA教程

這篇文章主要介紹了JAVA時間日期處理類,可實現遍歷兩個日期之間的每一天的功能,涉及針對日期的常見操作技巧,需要的朋友可以參考下

本文實例講述了JAVA時間日期處理類,主要用來遍歷兩個日期之間的每一天。分享給大家供大家參考。具體如下:

?
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
/**
*
* 文 件 名: AccountDate.java
*
* 創建時間: 2008-11-18
*
* Email : **@163.com
*/
import java.text.DecimalFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class AccountDate {
 private static transient int gregorianCutoverYear = 1582;
 /** 閏年中每月天數 */
 private static final int[] DAYS_P_MONTH_LY= {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
 /** 非閏年中每月天數 */
 private static final int[] DAYS_P_MONTH_CY= {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
 /** 代表數組里的年、月、日 */
 private static final int Y = 0, M = 1, D = 2;
 /**
 * 將代表日期的字符串分割為代表年月日的整形數組
 * @param date
 * @return
 */
 public static int[] splitYMD(String date){
  date = date.replace("-", "");
  int[] ymd = {0, 0, 0};
  ymd[Y] = Integer.parseInt(date.substring(0, 4));
  ymd[M] = Integer.parseInt(date.substring(4, 6));
  ymd[D] = Integer.parseInt(date.substring(6, 8));
  return ymd;
 }
 /**
 * 檢查傳入的參數代表的年份是否為閏年
 * @param year
 * @return
 */
 public static boolean isLeapYear(int year) {
  return year >= gregorianCutoverYear ?
   ((year%4 == 0) && ((year%100 != 0) || (year%400 == 0))) : (year%4 == 0);
 }
 /**
 * 日期加1天
 * @param year
 * @param month
 * @param day
 * @return
 */
 private static int[] addOneDay(int year, int month, int day){
  if(isLeapYear( year )){
   day++;
   if( day > DAYS_P_MONTH_LY[month -1 ] ){
    month++;
    if(month > 12){
     year++;
     month = 1;
    }
    day = 1;
   }
  }else{
   day++;
   if( day > DAYS_P_MONTH_CY[month -1 ] ){
    month++;
    if(month > 12){
     year++;
     month = 1;
    }
    day = 1;
   }
  }
  int[] ymd = {year, month, day};
  return ymd;
 }
 /**
 * 將不足兩位的月份或日期補足為兩位
 * @param decimal
 * @return
 */
 public static String formatMonthDay(int decimal){
  DecimalFormat df = new DecimalFormat("00");
  return df.format( decimal );
 }
 /**
 * 將不足四位的年份補足為四位
 * @param decimal
 * @return
 */
 public static String formatYear(int decimal){
  DecimalFormat df = new DecimalFormat("0000");
  return df.format( decimal );
 }
 /**
 * 計算兩個日期之間相隔的天數
 * @param begin
 * @param end
 * @return
 * @throws ParseException
 */
 public static long countDay(String begin,String end){
   SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
   Date beginDate , endDate;
   long day = 0;
   try {
   beginDate= format.parse(begin);
   endDate= format.parse(end);
   day=(endDate.getTime()-beginDate.getTime())/(24*60*60*1000);
  } catch (ParseException e) {
   e.printStackTrace();
  }   
   return day;
 }
 /**
 * 以循環的方式計算日期
 * @param beginDate endDate
 * @param days
 * @return
 */
 public static List<String> getEveryday(String beginDate , String endDate){
  long days = countDay(beginDate, endDate);
  int[] ymd = splitYMD( beginDate );
  List<String> everyDays = new ArrayList<String>();
  everyDays.add(beginDate);
  for(int i = 0; i < days; i++){
   ymd = addOneDay(ymd[Y], ymd[M], ymd[D]);
   everyDays.add(formatYear(ymd[Y])+"-"+formatMonthDay(ymd[M])+"-"+formatMonthDay(ymd[D]));
  }
  return everyDays;
 }
 public static void main(String[] args) {
  List<String> list = AccountDate.getEveryday("2008-08-29", "2008-09-02");
  for (String result : list) {
   System.out.println(result);
  }
 }
}

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

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久久a毛片 | 午夜天堂精品久久久久 | 在线播放国产一区二区三区 | 亚洲天堂一区二区 | 性网站在线观看 | av网站在线看 | 污视频网站在线观看 | 自拍偷拍亚洲一区 | 国内精品嫩模av私拍在线观看 | 欧美日韩电影一区 | 欧美一区二区三区在线视频 | 亚洲精品一二三 | 国产伦精品一区二区三区照片91 | 一二三区字幕免费观看av | 国产第一区二区三区 | 伊人逼逼 | 99热在线观看免费 | 久久精国产| 无码日韩精品一区二区免费 | 精品无码久久久久久国产 | 国产精品女同一区二区免费站 | 日日夜夜精品视频 | 777777777亚洲妇女 | 黄色美女网站在线观看 | 国产黄色一级毛片 | 欧美一区二区免费在线 | 免费福利视频一区二区三区 | 夜夜艹| a级三四级黄大片 | 国产日韩精品久久 | 精品国产乱码久久久久久影片 | 国产精品久久久久久久久大全 | 国产伦精品一区二区三区精品视频 | 天堂资源在线 | 国产成人综合av | 日本不卡在线 | 91视频在线播放视频 | 一区二区三区日韩 | 午夜精品久久久久久 | 国内精品久久久久久久97牛牛 | 亚洲黄色片免费看 |