亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Java > 正文

Java開發基礎日期類代碼詳解

2024-07-13 10:13:07
字體:
來源:轉載
供稿:網友

由于工作關系,很久沒更新博客了,今天就給大家帶來一篇Java實現獲取指定月份的星期與日期對應關系的文章,好了,不多說,我們直接上代碼:

一、日期工具類

java;">package com.lyz.date;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Calendar;import java.util.Date;import java.util.HashMap;import java.util.List;import java.util.Map;import com.chwl.medical.utils.common.CollectionUtils;import com.chwl.medical.utils.common.ObjectUtils;/** * 日期工具類,獲取指定月份的星期與日期的對應關系 * @author liuyazhuang * */public class DateUtils {	public static final String DATE_FORMAT = "yyyy-MM-dd";	public enum Type{		Year, Month, Date	}	/**	 * 獲取兩個時間之間的年份	 * @param startDate	 * @param endDate	 * @return	 */	public static int getYears(Date startDate, Date endDate, Type type){		int count = 0;		 Calendar calBegin = Calendar.getInstance(); //獲取日歷實例 		 Calendar calEnd = Calendar.getInstance(); 		 calBegin.setTime(startDate);		 calEnd.setTime(endDate);		 if(Type.Year == type){			 count = calEnd.get(Calendar.YEAR) - calBegin.get(Calendar.YEAR); 		 }else if(Type.Month == type){			 count = calEnd.get(Calendar.MONTH) - calBegin.get(Calendar.MONTH); 		 }else{			 count = calEnd.get(Calendar.DATE) - calBegin.get(Calendar.DATE); 		 }		 return count;	}	/**	 * 獲取指定月份的所有日期和星期集合	 * @param offset:起止月份, 0:當前月, 1:下一個月; 2下下月; 以此類推... -1:上一個月; -2:上上一個月 ; 以此類推....	 * @param length:終止月份, 0:當前月, 1:下一個月; 2下下月; 以此類推... -1:上一個月; -2:上上一個月 ; 以此類推....	 * @return:日期和星期集合:星期為key 日期為value	 */	public static Map<String, List<String>> getKeyFromMapByValue(int offset, int length){		return getKeyFromMapByValue(getDateKeyWeekValue(offset, length));	}	/**	 * 將以date為key, week為value的map轉化為以week為key, date為value的map	 * @param dateWeek	 * @return	 */	public static Map<String, List<String>> getKeyFromMapByValue(Map<String, String> dateWeek){		Map<String, List<String>> weekDate = new HashMap<String, List<String>>();		if(!CollectionUtils.isEmpty(dateWeek)){			for(Map.Entry<String, String> entry : dateWeek.entrySet()){				//獲取日期集合				List<String> list = weekDate.get(entry.getValue());				if(ObjectUtils.isEmpty(list)){					list = new ArrayList<String>();				}				list.add(entry.getKey());				weekDate.put(entry.getValue(), list);			}		}		return weekDate;	}	/**	 * 獲取指定月份的所有日期和星期集合	 * @param offset:起止月份, 0:當前月, 1:下一個月; 2下下月; 以此類推... -1:上一個月; -2:上上一個月 ; 以此類推....	 * @param length:終止月份, 0:當前月, 1:下一個月; 2下下月; 以此類推... -1:上一個月; -2:上上一個月 ; 以此類推....	 * @return:日期和星期集合:日期為key 星期為value	 */	public static Map<String, String> getDateKeyWeekValue(int offset, int length){		Map<String, String> map = new HashMap<String, String>();		for(int i = offset; i <= length; i++){			List<Date> list = getAllTheDateOftheMonth(new Date(),i);			for(Date date: list){				String weekDay = getDateOfWeek(date);				map.put(parseDateToString(date, DATE_FORMAT), weekDay);			}		}		return map;	}	/**	 * 獲取當前日期所在月份的所有日期,指定月份的所有日期	 * @param date:當前日期	 * @param n:1下一月;2:下下月..以此類推; -1:上月,-2:上上月...以此類推	 * @return:返回指定月份的所有日期	 */	public static List<Date> getAllTheDateOftheMonth(Date date, int n) {		List<Date> list = new ArrayList<Date>();		Calendar cal = Calendar.getInstance();		cal.setTime(date);		cal.set(Calendar.DATE, 1);		cal.add(Calendar.MONTH, n);		int month = cal.get(Calendar.MONTH);		while(cal.get(Calendar.MONTH) == month){			list.add(cal.getTime());			cal.add(Calendar.DATE, 1);		}		return list;	}	/**	 * 根據日期獲得星期	 * @param date	 * @return	 */	public static String getDateOfWeek(Date date) {		//String[] weekDaysName = { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };		String[] weekDaysCode = { "0", "1", "2", "3", "4", "5", "6" };		Calendar calendar = Calendar.getInstance();		calendar.setTime(date);		int intWeek = calendar.get(Calendar.DAY_OF_WEEK) - 1;		if(intWeek < 0) intWeek = 0;		return weekDaysCode[intWeek];	}	public static String parseDateToString(Date date, String formatString) {		return getSimpleDateFormat(formatString).format(date);	}	public static SimpleDateFormat getSimpleDateFormat(String formatString) {		return new SimpleDateFormat(formatString);	}}

二、測試類

package com.lyz.date; import net.sf.json.JSONObject; /**  * 測試工具類  * @author liuyazhuang  *  */ public class TestDate {   public static void main(String[] args) {     System.out.println(JSONObject.fromObject(DateUtils.getDateKeyWeekValue(-1, 1)));     System.out.println(JSONObject.fromObject(DateUtils.getKeyFromMapByValue(-1,1)));   } } 

三、測試結果

{  "2017-02-28": "2",  "2017-04-19": "3",  "2017-04-17": "1",  "2017-02-25": "6",  "2017-04-18": "2",  "2017-02-24": "5",  "2017-04-15": "6",  "2017-02-27": "1",  "2017-04-16": "0",  "2017-02-26": "0",  "2017-04-13": "4",  "2017-02-21": "2",  "2017-04-14": "5",  "2017-02-20": "1",  "2017-04-11": "2",  "2017-02-23": "4",  "2017-04-12": "3",  "2017-02-22": "3",  "2017-04-21": "5",  "2017-04-20": "4",  "2017-04-08": "6",  "2017-04-09": "0",  "2017-04-04": "2",  "2017-04-05": "3",  "2017-04-06": "4",  "2017-04-07": "5",  "2017-04-01": "6",  "2017-04-02": "0",  "2017-04-03": "1",  "2017-04-10": "1",  "2017-02-07": "2",  "2017-02-06": "1",  "2017-02-09": "4",  "2017-02-08": "3",  "2017-03-29": "3",  "2017-03-25": "6",  "2017-03-26": "0",  "2017-03-27": "1",  "2017-02-01": "3",  "2017-03-28": "2",  "2017-03-21": "2",  "2017-02-03": "5",  "2017-03-22": "3",  "2017-02-02": "4",  "2017-03-23": "4",  "2017-02-05": "0",  "2017-03-24": "5",  "2017-02-04": "6",  "2017-03-31": "5",  "2017-03-30": "4",  "2017-04-23": "0",  "2017-04-22": "6",  "2017-02-19": "0",  "2017-04-25": "2",  "2017-02-18": "6",  "2017-04-24": "1",  "2017-02-17": "5",  "2017-04-27": "4",  "2017-04-26": "3",  "2017-04-29": "6",  "2017-03-18": "6",  "2017-04-28": "5",  "2017-03-19": "0",  "2017-02-12": "0",  "2017-03-16": "4",  "2017-02-11": "6",  "2017-03-17": "5",  "2017-02-10": "5",  "2017-03-14": "2",  "2017-03-15": "3",  "2017-02-16": "4",  "2017-03-12": "0",  "2017-02-15": "3",  "2017-03-13": "1",  "2017-02-14": "2",  "2017-03-10": "5",  "2017-02-13": "1",  "2017-03-11": "6",  "2017-03-20": "1",  "2017-03-09": "4",  "2017-03-08": "3",  "2017-03-07": "2",  "2017-03-06": "1",  "2017-03-05": "0",  "2017-03-04": "6",  "2017-03-03": "5",  "2017-03-02": "4",  "2017-04-30": "0",  "2017-03-01": "3"}
{  "3": [    "2017-04-19",    "2017-04-12",    "2017-02-22",    "2017-04-05",    "2017-02-08",    "2017-03-29",    "2017-02-01",    "2017-03-22",    "2017-04-26",    "2017-03-15",    "2017-02-15",    "2017-03-08",    "2017-03-01"  ],  "2": [    "2017-02-28",    "2017-04-18",    "2017-02-21",    "2017-04-11",    "2017-04-04",    "2017-02-07",    "2017-03-28",    "2017-03-21",    "2017-04-25",    "2017-03-14",    "2017-02-14",    "2017-03-07"  ],  "1": [    "2017-04-17",    "2017-02-27",    "2017-02-20",    "2017-04-03",    "2017-04-10",    "2017-02-06",    "2017-03-27",    "2017-04-24",    "2017-03-13",    "2017-02-13",    "2017-03-20",    "2017-03-06"  ],  "0": [    "2017-04-16",    "2017-02-26",    "2017-04-09",    "2017-04-02",    "2017-03-26",    "2017-02-05",    "2017-04-23",    "2017-02-19",    "2017-03-19",    "2017-02-12",    "2017-03-12",    "2017-03-05",    "2017-04-30"  ],  "6": [    "2017-02-25",    "2017-04-15",    "2017-04-08",    "2017-04-01",    "2017-03-25",    "2017-02-04",    "2017-04-22",    "2017-02-18",    "2017-04-29",    "2017-03-18",    "2017-02-11",    "2017-03-11",    "2017-03-04"  ],  "5": [    "2017-02-24",    "2017-04-14",    "2017-04-21",    "2017-04-07",    "2017-02-03",    "2017-03-24",    "2017-03-31",    "2017-02-17",    "2017-04-28",    "2017-03-17",    "2017-02-10",    "2017-03-10",    "2017-03-03"  ],  "4": [    "2017-04-13",    "2017-02-23",    "2017-04-20",    "2017-04-06",    "2017-02-09",    "2017-02-02",    "2017-03-23",    "2017-03-30",    "2017-04-27",    "2017-03-16",    "2017-02-16",    "2017-03-09",    "2017-03-02"  ]}

總結

本文通過代碼示例向大家展示了日期工具類的幾種用法,希望對大家學習Java有所幫助。如有不足之處,歡迎留言指出,小編會及時回復大家并更正。感謝朋友們對VeVb武林網網站的支持!


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91精品国产自产在线观看永久| 色偷偷88888欧美精品久久久| 亚洲专区在线视频| 精品国产一区二区三区久久狼5月| 亚洲一区中文字幕在线观看| 精品一区二区三区四区| 成人在线免费观看视视频| 隔壁老王国产在线精品| 欧美大片在线看免费观看| 亚洲电影免费观看| 久久久久成人精品| 久久久在线视频| 日韩av一卡二卡| 成人福利网站在线观看| 国产精品a久久久久久| 日韩中文字幕在线看| 中文日韩在线观看| 日韩成人在线电影网| 欧美专区日韩视频| 欧美成人精品激情在线观看| 欧美激情精品久久久久久大尺度| 日韩中文字幕久久| 国产精品免费在线免费| 中文国产成人精品久久一| 在线日韩第一页| 久久欧美在线电影| 国产日韩在线免费| 日韩电视剧在线观看免费网站| 国产精品久久久久一区二区| 精品国产乱码久久久久酒店| 久久久亚洲精品视频| 日韩欧美在线免费观看| 国产精品久久久久影院日本| 亚洲aⅴ男人的天堂在线观看| 国产成人免费av电影| 亚洲午夜小视频| 成人久久18免费网站图片| 日韩av在线免费播放| 欧美日韩一区二区三区在线免费观看| 日韩精品免费在线视频观看| 久久免费精品日本久久中文字幕| 欧美另类极品videosbestfree| 久久久久亚洲精品成人网小说| 亚洲精品久久在线| 九九热这里只有精品免费看| 色视频www在线播放国产成人| yellow中文字幕久久| 国产精品自产拍在线观看| 日韩视频欧美视频| 久久久999精品视频| 欧美精品久久久久久久| 亚洲一区二区免费在线| 亚洲人成77777在线观看网| 亚洲一区二区三区sesese| 亚洲成年网站在线观看| 欧美激情一区二区三级高清视频| 国产成人综合av| 一本色道久久88亚洲综合88| 国产精品网站视频| 欧美电影免费观看高清完整| 日韩av在线看| 国产精品夜间视频香蕉| 97精品视频在线播放| 4k岛国日韩精品**专区| 久久久视频免费观看| 久久亚洲影音av资源网| 欧美xxxwww| 91成人在线播放| 久久99久久99精品中文字幕| 国产精品私拍pans大尺度在线| 欧美性在线观看| 日韩欧美亚洲国产一区| 日本在线精品视频| 亚洲精品www久久久久久广东| www日韩中文字幕在线看| 免费成人高清视频| 久久精品亚洲国产| 久久久国产精品视频| 国产激情999| 中文字幕一精品亚洲无线一区| 91在线免费视频| 国产精品日日摸夜夜添夜夜av| 亚洲女人天堂av| 国产不卡av在线| 亚洲片国产一区一级在线观看| 中文字幕在线亚洲| 日韩av免费观影| 国产精品无av码在线观看| 成人伊人精品色xxxx视频| 欧美大片免费看| 欧美国产乱视频| 国产91精品久久久| 成人激情视频在线播放| 国产午夜精品久久久| 亚洲欧美日韩网| 韩剧1988在线观看免费完整版| 国产精品一久久香蕉国产线看观看| 国产精品一区二区久久| 国产精品日韩欧美综合| 久久天堂电影网| 国产不卡在线观看| 综合欧美国产视频二区| 欧美一级视频在线观看| 欧美精品18videos性欧美| 色噜噜国产精品视频一区二区| 欧美日韩国产精品一区二区三区四区| 国产精品入口免费视| 亚洲一区精品电影| 国产精品日韩在线观看| 日本欧美中文字幕| 久久久免费高清电视剧观看| 亚洲精品丝袜日韩| 91欧美日韩一区| 精品久久香蕉国产线看观看gif| 国产成人精品一区二区三区| 色狠狠久久aa北条麻妃| 另类少妇人与禽zozz0性伦| 国语自产精品视频在线看抢先版图片| 日韩av手机在线看| 亚洲精品中文字幕有码专区| 精品久久久久国产| 成人做爰www免费看视频网站| 亚洲女成人图区| 青草热久免费精品视频| 欧美日在线观看| 亚洲色在线视频| 久久综合网hezyo| 欧美日韩国产麻豆| 亚洲欧洲在线播放| 亚洲免费成人av电影| 国产精品88a∨| 91精品国产91久久久久福利| 日韩av一区二区在线观看| 91久久精品国产91性色| 精品久久久久久久久中文字幕| 日韩欧美在线视频观看| 国产精品无av码在线观看| 欧美视频专区一二在线观看| 亚洲性猛交xxxxwww| 亚洲福利视频网| 日韩不卡在线观看| 亚洲一区国产精品| 日韩精品在线免费观看视频| 欧美乱妇40p| 伊人久久久久久久久久久久久| 2018中文字幕一区二区三区| 国产视频欧美视频| 亚洲人永久免费| 久热精品视频在线| 欧美激情网站在线观看| 亚洲女性裸体视频| 亚洲精品福利资源站| 欧美午夜片欧美片在线观看| 国产色视频一区| 亚洲午夜未删减在线观看| 亚洲日韩欧美视频一区| 中文字幕视频一区二区在线有码| 精品人伦一区二区三区蜜桃免费| 成人激情春色网| 午夜精品蜜臀一区二区三区免费| 午夜精品久久久久久99热| 欧美成人午夜激情视频| 欧美专区第一页| 国产69精品久久久久9999|