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
    }
}

You may also like...

16,062 Responses

  1. Pepper spray can be topic to authorized restrictions in some areas.

  2. 36 Nadia Belerique. A Mirror On your Feet On The Ground (element).

  3. Extremely-voguish as effectively as the more conservative women can don maxi dresses with elan and not worry a few thing.

  4. The important thing to Lorell’s Hen Shack is simplicity.

  5. Another key advancement in influencer marketing technique this 12 months can be authenticity.

  6. Totally different calibers and ammunition varieties supply varying levels of stopping power.

  7. The primary benefit of those masses is that almost all of them fireplace a number of projectiles (that is, pellets of various dimension) each time you pull the trigger, rising your possibilities of impacting the target.

  8. Some house owners might want them to sit down instantly on the floor, whereas some might want them to have a little bit elevation.

  9. The more you could have practiced, and the extra confident you might be of your capacity and equipment, the less likely you are to panic.

  10. いぬ ぼ表示:

    Apartments: Starting from studios to 4-bedroom items, often containing master bedrooms with en-suite bathrooms, fitted kitchens, dwelling and dining areas, balconies, and lined parking.

  11. All the candidates who’ve applied for this vacancy are now waiting for the syllabus and examination sample to begin exam preparation.

  12. Numbers of companies out there are offering these redesigning services however not all are perfect for you so you could have to decide on the perfect one for you.

  13. West Vancouver is considered to be probably the most desirable areas of Vancouver; a very private but handy location with a novel “Village” character.

  14. Many wardrobes have a set of drawers at the same time to give additional space to maintain your small things.

  15. You can also consider selling jewellery online to achieve a broader viewers.

  16. 花岡町子表示:

    A new science of the thoughts?

  17. Latimer of Lockesburg and S.S.

  18. Type via the choices, pull what you need from each generated mannequin, add your personal aptitude, and subsequently, finalize the summary that shows you as distinctive.

  19. Hughes, Equipment (2017). “Disposable: Helpful cinema on early tv”.

  20. 黒瀬天気表示:

    She watched a sick Native American girl die after a neighborhood white physician refused to treat her, and La Flesche determined then and there that she would become a physician.

  21. Goals earns its income by the sale of its journey products and promoting.

  22. Revamping a small lackluster space would possibly also be the answer.

  23. Individuals who must journey often for their work or different purposes must have their belongings additional-organized so that packing takes minimal time.

  24. Ultimately, although there are various messages left, the corporate by no means explains the rationale for calling or what company they are particularly accumulating for.

  25. Ремонт телефонов表示:

    Профессиональный сервисный центр мастерская телефонов ремонт смартфонов

  26. Ollie me Cox, Anadarko, Okla., Mrs.

  27. 4194株価表示:

    Loved the learn and photographs.

  28. Профессиональный сервисный центр по ремонту бытовой техники с выездом на дом.
    Мы предлагаем: сервисные центры в воронеже
    Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!

  29. Отличный сайт! Всем рекомендую!Оптика СПб

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。