LocalDate類操作時間

豆沙包醬發表於2018-04-22
        LocalDate today = LocalDate.now(); //當前日期 yyyy-dd-mm
        today.getMonth(); //APRIL 當前日期-月 getvalue 可以獲得數字
        today.getMonthValue();//4   當前日期-月
        today.getYear();//2018 當前日期-年
        today.getDayOfMonth();//22 當前日期-日
        today.getDayOfWeek();//SUNDAY 返回當前日期是星期幾,
        today.getDayOfWeek().getValue();//7 getValue 可以獲取1-7數字星期
        today.getDayOfYear();//獲取當前年到今天的天數,2018.01.01---2018.04.22 =112天,包含今天
        today.plusDays(1);//2018-04-23  獲得當前日期之後的日期
        today.minusDays(1);//2018-04-21  獲得當前日期之前的日期
        today.atTime(LocalTime.now());//2018-04-22T16:48:22.708

        LocalDate DayofYear = LocalDate.ofYearDay(2018, 112);//返回哪一年,多少天后的日期 ==> 2018-04-22
        LocalDate EpochDay = LocalDate.ofEpochDay(0);//獲得1970-01-01後的日期,1970-01-01後的0天還是1970-01-01,如果是ofEpochDay(1) 則返回 1970-01-02

        LocalDate Dateoftaking = LocalDate.of(2018,04,23);//根據年月日返回日期 yyyy-dd-mm
        LocalDate endOfFeb = LocalDate.parse("2018-02-28"); // 嚴格按照ISO yyyy-MM-dd驗證,02寫成2都不行
        LocalDate.parse("2018-02-28"); // 無效日期無法通過:java.time.DateTimeException: Invalid date 'February 29' as '2018' is not a leap year


        // 取本月第1天:
        LocalDate firstDayOfThisMonth = today.with(TemporalAdjusters.firstDayOfMonth()); // 2018-04-01
        // 取本月第2天:
        LocalDate secondDayOfThisMonth = today.withDayOfMonth(2); // 2018-04-02
        // 取本月最後一天,不用計算是28,29,30還是31:
        LocalDate lastDayOfThisMonth = today.with(TemporalAdjusters.lastDayOfMonth()); // 2018-04-30
        // 取下一天:
        LocalDate firstDayOf = lastDayOfThisMonth.plusDays(1); // 變成了2018-05-01
        // 取2019年2月第一個週一
        LocalDate firstMondayOf = LocalDate.parse("2019-02-01").with(TemporalAdjusters.firstInMonth(DayOfWeek.MONDAY)); //2019-02-04


        /**
         * LocalTime
         * */
        LocalTime now = LocalTime.now(); //16:21:08.430  獲得當前時間

        now.getHour();//時
        now.getMinute();//分
        now.getNano();//納秒
        now.getSecond();//秒

        now.of(21, 30, 59, 11011);//或的21:30:59:11011
        now.plusHours(3);//當前時間3小時後
        now.plusMinutes(3);//當前時間3分鐘後
        now.plusSeconds(3);//當前時間3秒後
        now.plusNanos(3);//當前時間3納秒後

        now.minusHours(3);//當前時間3小時前
        now.minusMinutes(3);//當前時間3分鐘前
        now.minusSeconds(3);//當前時間3秒前
        now.minusNanos(3);//當前時間3納秒前
        
        //構造時間
        LocalTime zero = LocalTime.of(0, 0, 0); // 00:00:00
        LocalTime mid = LocalTime.parse("12:00:00"); // 12:00:00

        LocalDateTime localDateTime = now.atDate(LocalDate.now()); //獲得當前日期時間  2018-04-22T16:23:07.232



複製程式碼

相關文章