Java 各種時間上的操作範例
分享一些在專案中用到JAVA與日期相關的操作,包括:
- 取得目前的年、月、日
- 判斷兩個日期的大小
- 計算兩個日期的差距
- 取得昨天的日期
- 取得上個月的開始與結束日
package CDIT.stanley; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; import java.util.Calendar; public class dateOperation { public static int differentDays(Date date1,Date date2){ Calendar cal1 = Calendar.getInstance(); cal1.setTime(date1); Calendar cal2 = Calendar.getInstance(); cal2.setTime(date2); int day1= cal1.get(Calendar.DAY_OF_YEAR); int day2 = cal2.get(Calendar.DAY_OF_YEAR); int year1 = cal1.get(Calendar.YEAR); int year2 = cal2.get(Calendar.YEAR); if(year1 != year2){ int timeDistance = 0 ; for(int i = year1 ; i < year2 ; i ++){ if(i%4==0 && i%100!=0 || i%400==0){ timeDistance += 366; } else{ timeDistance += 365; } } return timeDistance + (day2-day1) ; } else{ return day2-day1; } } public static Date getFirstMonthDay(Calendar calendar) { calendar.set(Calendar.DATE, calendar.getActualMinimum(Calendar.DATE)); return calendar.getTime(); } public static Date getLastMonthDay(Calendar calendar) { calendar.set(Calendar.DATE, calendar.getActualMaximum(Calendar.DATE)); return calendar.getTime(); } public static void main(String[] args) throws ParseException { //取得目前的年、月、日 Calendar calendar = Calendar.getInstance(); System.out.println("今天是" + calendar.get(Calendar.YEAR) + "年" + (calendar.get(Calendar.MONTH) + 1) + "月" + calendar.get(Calendar.DAY_OF_MONTH) + "日"); System.out.println("=================================================="); //輸出:今天是2017年8月24日 //判斷兩個日期的大小 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd", Locale.TAIWAN); Date date1 = sdf.parse("2017-08-23"); Date date2 = sdf.parse("2016-09-22"); System.out.println("Date1 < Date2 : " + date1.before(date2)); System.out.println("Date1 > Date2 : " + date1.after(date2)); System.out.println("=================================================="); //輸出:Date1 < Date2 : false、Date1 > Date2 : true //計算兩個日期的差距 System.out.println("Date1 & Date2 差距 : " + differentDays(date1 , date2) + "天"); System.out.println("=================================================="); //輸出:Date1 & Date2 差距 : 31天 //取得昨天的日期 calendar = Calendar.getInstance(); calendar.add(Calendar.DATE, -1); String yestedayDate = sdf.format(calendar.getTime()); System.out.println("昨天是" + yestedayDate); System.out.println("=================================================="); //輸出:昨天是2017-08-23 //取得上個月的開始與結束日 calendar = Calendar.getInstance(); calendar.add(Calendar.MONTH,-1); String monthDayFirst = sdf.format(getFirstMonthDay(calendar)); String monthDayLast = sdf.format(getLastMonthDay(calendar)); System.out.println("上個月的第一天是" + monthDayFirst); System.out.println("上個月的最後一天是" + monthDayLast); System.out.println("=================================================="); //輸出:上個月的第一天是2017-07-01、上個月的最後一天是2017-07-31 } }
priligy maxpharm buy priligy max pharm priligy max pharm
One thing I would really like to say is always that car insurance termination is a dreaded experience and if you are doing the proper things being a driver you won’t get one. Lots of people do obtain the notice that they are officially dumped by their particular insurance company they have to struggle to get further insurance after having a cancellation. Low cost auto insurance rates usually are hard to get after the cancellation. Understanding the main reasons with regard to auto insurance cancellations can help motorists prevent losing one of the most crucial privileges readily available. Thanks for the strategies shared by your blog.
продамус промокод скидка на подключение https://prodamus-promokod21.ru/ .
Hi, i think that i saw you visited my website so i came to ?return the favor?.I’m attempting to find things to enhance my website!I suppose its ok to use some of your ideas!!
I like the valuable info you provide in your articles. I?ll bookmark your weblog and check again here regularly. I’m quite sure I will learn lots of new stuff right here! Good luck for the next!
I’m really enjoying the design and layout of your site. It’s a very easy on the eyes which makes it much more enjoyable for me to come here and visit more often. Did you hire out a developer to create your theme? Great work!
Thanks for your publiction. Another item is that to be a photographer entails not only problems in taking award-winning photographs but additionally hardships in establishing the best digital camera suited to your needs and most especially struggles in maintaining the grade of your camera. That is very real and noticeable for those professional photographers that are straight into capturing the nature’s eye-catching scenes : the mountains, the particular forests, the actual wild or perhaps the seas. Going to these exciting places unquestionably requires a photographic camera that can meet the wild’s harsh surroundings.
быстрый вывод из запоя ростов gov.ukrbb.net/viewtopic.php?f=3&t=6368 .
Hmm it looks like your blog ate my first comment (it was super long) so I guess I’ll just sum it up what I submitted and say, I’m thoroughly enjoying your blog. I as well am an aspiring blog blogger but I’m still new to everything. Do you have any helpful hints for inexperienced blog writers? I’d genuinely appreciate it.
best otc ed pills http://canadiandrugsgate.com/# viagra without doctor prescription amazon
ed doctor
Сколько стоит диплом высшего и среднего образования и как его получить?
Carnosic acid exhibits antiproliferative and proapoptotic effects in tumoral NCI H460 and nontumoral IMR 90 lung cells priligy walgreens Erythromelalgia is characterized by predominantly intermittent episodes of severe, burning pain associated with red hot extremities during episodes there is marked redness erythema of the skin, and increased skin temperature, particularly of the feet
I?ve read a few good stuff here. Definitely worth bookmarking for revisiting. I wonder how much effort you put to make such a magnificent informative website.
Thank you for some other excellent post. Where else may anybody get that kind of info in such an ideal manner of writing? I’ve a presentation next week, and I’m on the look for such information.
best canadian online pharmacy http://canadiandrugsgate.com/# online medication
drug prices comparison
Тут можно преобрести сейф москва огнестойкий купить огнестойкий сейф купить
Тут можно преобрести оружейные сейфы москва сейф для оружие
вывод из запоя круглосуточно ростов-на-дону http://www.pokupki.bestforums.org/viewtopic.php?f=7&t=24033/ .
Тут можно преобрести несгораемый сейф огнестойкие сейфы цена
Как приобрести аттестат о среднем образовании в Москве и других городах
Тут можно преобрести сейф охотничий купить оружейные сейфы шкафы
Aviator is India’s go-to for fast-paced, decision-based gambling. The challenge? Cash out at the peak or risk it all. With real-money rounds and demos, this game brings a unique level of engagement to the online casino scene.
aviator game for money [url=https://aviator-games-online.ru/]aviator money game[/url] .
erection pills that work: Canadian pharmacy online – best erectile dysfunction pills
I have learn some excellent stuff here. Certainly worth bookmarking for revisiting. I wonder how a lot effort you place to create one of these great informative web site.
One more thing to say is that an online business administration program is designed for students to be able to well proceed to bachelors degree education. The Ninety credit college degree meets the lower bachelor education requirements and once you earn the associate of arts in BA online, you should have access to the latest technologies within this field. Some reasons why students would like to get their associate degree in business is because they can be interested in this area and want to receive the general education and learning necessary prior to jumping right bachelor education program. Many thanks for the tips you really provide in the blog.
Great site. Lots of helpful info here. I?m sending it to a few buddies ans also sharing in delicious. And naturally, thanks in your sweat!
Как быстро и легально купить аттестат 11 класса в Москве
https://canadiandrugsgate.com/# ed meds
Узнайте стоимость диплома высшего и среднего образования и процесс получения
Hi there, You’ve done a great job. I will definitely digg it and in my opinion suggest to my friends. I’m confident they will be benefited from this site.