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 } }
Excellent article. Keep writing such kind of info on your page. Im really impressed by it.
Hey there, You’ve done a fantastic job. I’ll certainly digg it and individually suggest to my friends. I’m confident they will be benefited from this web site.
https://motflix.cc/
buy zithromax 1000 mg online zithromax 250 mg australia buy zithromax
http://gabapentinneurontin.pro/# neurontin brand name 800mg
neurontin cost australia: neurontin canada online – neurontin 400mg
neurontin 300mg tablet cost: buy neurontin canada – cost of neurontin
Escolha apenas esta casa de apostas 1win
Recomendo uma excelente empresa de apostas 1win
buy cheap amoxicillin cost of amoxicillin 30 capsules generic amoxicillin online
zithromax capsules 250mg: zithromax 250 mg tablet price – buy generic zithromax online
Отличный сайт! Тут Вы можете приобрестиГелиевые шары
price of amoxicillin without insurance: amoxicillin 500 mg brand name – amoxicillin no prescription
В нашем обществе, где диплом – это начало отличной карьеры в любом направлении, многие ищут максимально простой путь получения качественного образования. Важность наличия официального документа об образовании сложно переоценить. Ведь именно диплом открывает двери перед любым человеком, который собирается начать профессиональную деятельность или учиться в высшем учебном заведении.
Предлагаем быстро получить этот важный документ. Вы можете купить диплом, и это становится выгодным решением для человека, который не смог завершить образование, потерял документ или хочет исправить плохие оценки. дипломы производятся с особой тщательностью, вниманием к мельчайшим элементам, чтобы в итоге получился полностью оригинальный документ.
Плюсы данного подхода состоят не только в том, что вы оперативно получите свой диплом. Весь процесс организован удобно и легко, с профессиональной поддержкой. От выбора нужного образца до консультации по заполнению персональных данных и доставки по России — все под полным контролем опытных специалистов.
В результате, для тех, кто ищет быстрый способ получения необходимого документа, наша компания предлагает выгодное решение. Приобрести диплом – это значит избежать длительного процесса обучения и сразу переходить к личным целям, будь то поступление в университет или старт успешной карьеры.
diplom-net.ru
https://doxycyclinea.online/# where can i get doxycycline
В наше время, когда диплом – это начало отличной карьеры в любой сфере, многие пытаются найти максимально быстрый путь получения образования. Необходимость наличия официального документа сложно переоценить. Ведь именно диплом открывает дверь перед всеми, кто хочет начать профессиональную деятельность или учиться в ВУЗе.
В данном контексте мы предлагаем оперативно получить любой необходимый документ. Вы сможете заказать диплом нового или старого образца, и это будет отличным решением для человека, который не смог завершить образование, потерял документ или желает исправить свои оценки. Все дипломы производятся с особой аккуратностью, вниманием к мельчайшим деталям, чтобы в итоге получился документ, полностью соответствующий оригиналу.
Плюсы подобного решения заключаются не только в том, что вы сможете оперативно получить диплом. Весь процесс организован удобно, с профессиональной поддержкой. Начав от выбора нужного образца до консультации по заполнению личных данных и доставки в любое место страны — все будет находиться под абсолютным контролем опытных специалистов.
Для тех, кто хочет найти максимально быстрый способ получения необходимого документа, наша компания готова предложить выгодное решение. Приобрести диплом – это значит избежать долгого обучения и сразу переходить к важным целям: к поступлению в университет или к началу трудовой карьеры.
vuzdiploma
amoxil pharmacy buy amoxicillin from canada purchase amoxicillin 500 mg
https://amoxila.pro/# amoxicillin 30 capsules price
https://amoxila.pro/# generic amoxicillin
brand cialis icy – apcalis coal penisole wish
Dyson Dyson .
cheap zithromax pills how to buy zithromax online buy zithromax online fast shipping
where can i buy amoxicillin over the counter uk: buy amoxicillin online cheap – where can i get amoxicillin 500 mg
order prednisone 100g online without prescription: over the counter prednisone pills – how to buy prednisone online
doxycycline 100mg dogs: doxycycline 100mg capsules – buy doxycycline online 270 tabs
amoxicillin 500 capsule: amoxicillin 825 mg – amoxicillin canada price
amoxicillin cephalexin order amoxicillin online uk amoxicillin price without insurance
Отличный сайт! Тут Вы можете приобрестиШары на день рождения
Ir para a melhor casa de apostas 1win
Eu recomendo a melhor casa de apostas 1win
amoxicillin tablets in india: prescription for amoxicillin – order amoxicillin 500mg
http://prednisoned.online/# 20 mg of prednisone