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,592 Responses

  1. Expert Tip: The online-like structure on the turquoise is perhaps painted, so it’s important to know the real gem.

  2. Graeme Mitchell Mill Menzies, MB, ChB, Deputy Chief Medical Adviser for the Federal Government, Federation of Nigeria.

  3. 投資 総額表示:

    Sara Brueske: With environmental stuff- so we’ll keep on that little tangent versus trained behaviors and by accident pushing these just a little too far.

  4. This work included an establishment-extensive demonstrable shift away from youngster-centered experiences, to these the place families (defined as not less than one adult and one youngster with an ongoing relationship) collaborate on problems, enhance the expertise through personal connection, and build on one another’s participation.

  5. 通電 痛み表示:

    A little bit more about what that part of the trial looks like.

  6. These tones have ample depth to distinction towards medium skin but nonetheless harmonize with its warmth.

  7. The original prototype soft toy was orange and reflected the design of the emblem, which was then tailored for approximately 12 equivalent bears, one for every regional BBC Television Studio.

  8. Nancy Beal, Typist, Ministry of Defence.

  9. A new competitors seeks simple, compelling songs that may inspire, uplift, and call to protect our planet.

  10. What i do not understood is in truth how you’re no longer actually a lot more smartly-preferred than you may be now. You are so intelligent. You know thus considerably in the case of this topic, produced me for my part imagine it from so many various angles. Its like men and women are not fascinated unless it?s something to accomplish with Woman gaga! Your personal stuffs outstanding. Always maintain it up!

  11. Get personalised inventory ideas.

  12. As a result of of those abominations (practices) the Lord thy God doth drive them out before thee.

  13. Nicholas Richard White. For providers to British interests in Somalia.

  14. This included the efforts of the theoretical physicists working on the Los Alamos National Laboratory on the Manhattan Project, which led to the Trinity nuclear check and thus brought in regards to the Atomic Age.

  15. Узнай все о клиника варикоцеле варикоцеле яичка

  16. However the Egyptian priests advised Herodotus that there were three divine dynasties which preceded the reign of the human kings: that of the gods, of the demigods, and of the heroes.

  17. As a direct result, many villages had been left disconnected so the villagers started voluntary rebuilding efforts.

  18. November 16, 1998. The show-inside-a-present match completely with the season’s “Discovery and Exploration” theme, as Elmo investigated the world in a manner younger preschoolers understood: by way of simple subject-matter and plenty — and plenty — of repetition.

  19. My experience illustrates that you don’t must have your “dream job” or “corporate career” or life all discovered yet to avoid wasting big or to exceed your personal monetary objectives.

  20. 22246275 Workers Sergeant Thomas Hill, Corps of Royal Engineers.

  21. Tibetan turquoise and chinese language turquoise usually have spider net sample on the surface (seen matrix) and are consequently used usually for making type jewellery.

  22. “I’m definitely prepared for immediately.

  23. 升息債券表示:

    Kids’s Hospital Colorado gives pediatric weight administration programs to combat childhood obesity.

  24. Eric Moonman. For companies to Bloomsbury and Islington Well being Authority.

  25. 納め 意味表示:

    Identical to pets, babies have a habit of sniffing round everywhere and placing every thing in their mouths.

  26. The show is playing at the Aldwych Theatre in London’s West Finish and as a leading lighting supplier to some of the biggest shows in the nation, White Gentle was called upon to provide the lighting tools.

  27. Just as nature isn’t restricted to 1 or two colours, neither are at the moment’s brides.

  28. Ken Campbell eventually staged an even more lavish model of his unique production that includes lasers, revolving stages, and a theater remodeled to look like a spaceport.

  29. If you’re utilizing it specifically for conserving your child out of the canine bowl then you may alter it to 12 inches.

發佈留言

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