java獲取月份最后一天Calendar


@Test

    public void get_last_day_of_month(){

        //獲取2020-02的最后一天

        String dateString = "2020-02" ;

   

        //獲取年月

        int year = Integer.parseInt(dateString.split("-")[0]);

        int month = Integer.parseInt(dateString.split("-")[1]);

   

        //獲取 日歷 對象

        Calendar calendar = Calendar.getInstance() ;

        //填充年

        calendar.set(Calendar.YEAR , year);

   

        //填充月 calenda里的月份是0-11

        calendar.set(Calendar.MONTH , month - 1);

   

        //獲取2020-02日歷的最大字段,也就是最大多少天

        int maxDay = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);

   

        //填充 最后一天

        calendar.set(Calendar.DAY_OF_MONTH , maxDay);

 String date = DateFormatUtils.format(calendar.getTimeInMillis(), "yyyy-MM-dd");

        log.info(String.valueOf(date));//[main] INFO com.lyg.rest.DateTimeTest - 2020-02-29

   

        //在上面基礎上繼續獲取最后一天的最后 1s

        //calendar.set(Calendar.HOUR , 23);//下面的log.info會打印出 2020-03-01 11:59:59,因為Calendar.HOUR是12小時制

calendar.set(Calendar.DAY_OF_MONTH,23);//此時才是24h制

        calendar.set(Calendar.MINUTE , 59);

        calendar.set(Calendar.SECOND , 59);

   

        String dateTime = DateFormatUtils.format(calendar.getTimeInMillis(), "yyyy-MM-dd HH:mm:ss");

        log.info(dateTime);

    }

   

List<Jurisdiction> filterJurisdictions = administrativeAreas.stream()

.filter(a -> a.getAdministrativeAreaCode().equals(queryDTO.getAdministrativeCode()))

.collect(Collectors.toList()).get(0).getJurisdictions();


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM