Java8新特性LocalDateTime获取年,月,周,当年第X周

前言

基本上大家在JAVA中获取时间都是使用java.util.Date类或使用java.util.Calendar日历类,本篇博文主要给大家介绍Java8以后时间类java.time.LocalDateTime,这个时间类是Java8版本新增类,在使用度上肯定是没有Date,Calendar广,下面我们就来看看LocalDateTime常用方法。

代码实现

package test;

import java.time.DayOfWeek;
import java.time.LocalDateTime;
import java.time.temporal.WeekFields;

public class Test {
    public static void main(String[] a){
        //获取当前时间
        LocalDateTime currentDate = LocalDateTime.now();
        //获取年份
        int year = currentDate.getYear();
        System.out.println("获取当前年份:" + year);
        //获取月份
        int month = currentDate.getMonthValue();
        System.out.println("获取当前月份:" + month);
        //获取当前周
        int week = currentDate.getDayOfWeek().getValue();
        System.out.println("获取当前周:" + week);
        //获取当前时间第X周
        /*
        public static WeekFields of​(DayOfWeek firstDayOfWeek, int minimalDaysInFirstWeek)
        从第一天和最小日期获得WeekFields的实例。
        第一天的每周定义ISO DayOfWeek ,即一周中的第一天。 第一周的最小天数定义一个月或一年中必须存在的天数,从第一天开始,在将一周计算为第一周之前。 值1将计算作为第一周的一部分的月或年的第一天,而值7将要求整个七天在新的月或年中。

        WeekFields实例是单例; 对于firstDayOfWeek和minimalDaysInFirstWeek的每个唯一组合,将返回相同的实例。

        参数
        firstDayOfWeek - 一周的第一天,不是null
        minimalDaysInFirstWeek - 第一周的最小天数,从1到7
         */
        WeekFields weekFields = WeekFields.of(DayOfWeek.MONDAY,1);
        int weeks = currentDate.get(weekFields.weekOfYear());
        System.out.println("获取当前时间第" + weeks + "周");

    }
}

控制台执行结果
Java8新特性LocalDateTime获取年,月,周,当年第X周_第1张图片

扫二维码关注博主微信公众号

在这里插入图片描述

你可能感兴趣的:(java,java)