java.time.Month

1 java.time.Month介绍

在Java中,Month是代表一年中12个月的枚举。除文本枚举名称外,每年的每个月都有一个int值。

2 java.time.Month声明

我们来看一下java.time.Month的声明。

public enum Month extends Enum<Month> implements TemporalAccessor, TemporalAdjuster 

3 java.time.Month方法

方法 描述
Temporal adjustInto(Temporal temporal) 将指定的时间对象调整为与该对象的月份相同。
int firstDayOfYear(boolean leapYear) 获取与本月第一天相对应的年份。
Month firstMonthOfQuarter() 获取与该季度的第一个月相对应的月份。
static Month from(TemporalAccessor temporal) 从时间对象获取Month的实例。
int get(TemporalField field) 从一年中的这个月中获取指定字段的值作为一个整数。
String getDisplayName(TextStyle style, Locale locale) 获取文本表示形式,例如“ Jan”或“ December”。
long getLong(TemporalField field) 从一年的这个月中获取指定字段的值。
int getValue() 获取当月int值。
boolean isSupported(TemporalField field) 检查是否支持指定的字段。
int length(boolean leapYear) 获取本月的天数。
int maxLength() 获取本月的最大长度(天)。
int minLength() 获取以天为单位的该月的最小长度。
Month minus(long months) 返回一年中的月份,即该月份之前的指定月份。
static Month of(int month) 从int值获取Month的实例。
Month plus(long months) 返回一年中的月份,该月份是该月份之后指定的季度数。
<R> R query(TemporalQuery<R> query) 使用指定的查询查询此偏移量。
ValueRange range(TemporalField field) 获取指定字段的有效值范围。
static Month valueOf(String name) 返回具有指定名称的此类型的枚举常量。
static Month[] values() 以声明顺序返回包含此枚举类型的常量的数组。

4 java.time.Month案例1

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
import java.time.*;  
import java.time.temporal.*;  
public class MonthEnumExample1 {  
    public static void main(String[] args) {  
        Month month = Month.valueOf("January".toUpperCase());  
        System.out.printf("For the month of %s all Sunday are:%n", month);  
        LocalDate localdate = Year.now().atMonth(month).atDay(1).  
        with(TemporalAdjusters.firstInMonth(DayOfWeek.SUNDAY));  
        Month mi = localdate.getMonth();  
        while (mi == month) {  
            System.out.printf("%s%n", localdate);  
            localdate = localdate.with(TemporalAdjusters.next(DayOfWeek.SUNDAY));  
            mi = localdate.getMonth();  
        }  
    }  
}  

输出结果为:

For the month of JANUARY all Sunday are:
2017-01-01
2017-01-08
2017-01-15
2017-01-22
2017-01-29

5 java.time.Month案例2

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
import java.time.*;  
public class MonthEnumExample2 {  
  public static void main(String[] args) {  
    Month month = Month.from(LocalDate.now());  
    System.out.println(month.getValue());  
    System.out.println(month.name());  
  }  
}  

输出结果为:

1
JANUARY

 

热门文章

优秀文章