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 } }
https://colab.research.google.com/drive/1PwQF14UnpNg1xEAxBXE1FaLFru5iedXR
60a1537d4d micfree
https://colab.research.google.com/drive/1S4ukaURphzKF_C7aEvSVW8iVJT8_1o3G
60a1537d4d attrlaut
https://colab.research.google.com/drive/1ebHl3iO7W2y5Vnw2-zW3bl0TkWbTls72
60a1537d4d justgre
манипулятор аренда 60a1537d4d etealar
order cialis buy viagra online no prescription buy viagra online australia legally how much levitra should i take
перевозка бытовок в москве 60a1537d4d heddfarl
Arkadan ilişki: malzemeler. 1. kayganlaştırıcı yada vazelin. 2.
penisî olan patner. vatif. u temizlik seti.
önce vakum ile iyice temizle, sonra sevişmeye başla sonra vazelin sürsün küçük bir vezir
parmagı ile ortamı hazırlasın, sonra penis ile
yavaş yavaş (kesinlikle yavaş olsun) içeri girsin.
merck molnupiravir molnupiravir supplier molnupiravir emergency use tab molnupiravir price
online bingo for money
no deposit bonus
online casino bonus no deposit
nolvadex pct amazon where to buy nolvadex 2018 uk where can you buy nolvadex how often to take nolvadex on cycle
free no deposit
best deposit casino bonus
casino online real money usa
Türk Eczacıları Birliği (TEB) Genel Sekreteri Özgür Özel,
eczanelerde kullanılan ve reçete onay sistemi denilen ‘Medula Provizyon Sistemi’nin çöktüğünü açıklarken, Sosyal.
win real money online casino for free
real online casino
casinos online real money
amoxil pediatrico purchase amoxil 1000mg online will amoxil treat strep throat and pneumonia standard dose amoxil for cats
Sıcak bir kızla mükemmel aşırı Big Black Cock video.
Deepthroat gibi kategorilerde binlerce hardcore porno videosunu kontrol
edin, Ahegao veya Femdom. Keyfini çıkarın seksi
sarışın piliç sadece umurunda hakkında lanet bu bbc.
kamagra australia shop is there generic cialis in usa kamagra oral jelly side effects how does viagra work wiki
best online casino for us players
no deposit casino bonus
casino welcome bonuses
bonus no deposit
safe online casino
online spins
no deposit casino real money
best online casinos for us players
casino bonuses online
Medicare İndirilebilir, Borç ve Prim Oranları Için-Sağlık-Profesyoneller 2022.
İçindekiler. Medicare Bölüm A Hastane Sigortası ; Medicare Kısım B Tamamlayıcı Sağlık Sigortası ; Medicare için Faturalandırma
Hakkında Daha Fazla Bilgi ; 2022 Jun 13th, Benefits Seminar
Investing in People (Mart 2022).
online mobile casinos
online us casinos
best casino bonuses
mba dissertation help
phd dissertation writing service
writing your dissertation in
kamagra perth what does cialis do how to take cialis 20 mg how to use viagra pills
the best online casino
free welcome bonus no deposit required
online casinos free bonuses
dissertation only phd
writing dissertation
best dissertation help services
himalayan viagra cialis vs.levitra what is cialis tadalafil used for when does cialis come off patent in australia
dissertation meaning
dissertation editing
edd dissertation topics
what is the best online casino for real money
online casinos for real money
free online games to win real money no deposit