📜  Java中的 Year range() 方法及示例(1)

📅  最后修改于: 2023-12-03 15:16:27.716000             🧑  作者: Mango

Java中的 Year range() 方法及示例

java.time.Year类是Java 8中引入的日期时间API的一部分。其中,range()方法返回了指定年份的区间范围。

方法签名
public ValueRange range(TemporalField field)
参数

field:目标字段,根据不同字段的类型可以获取不同的值范围。

返回值

ValueRange对象,表示目标字段的取值范围。

示例
import java.time.Year;
import java.time.temporal.ChronoField;
import java.time.temporal.ValueRange;

public class YearRangeExample {
    public static void main(String[] args) {
        Year year = Year.of(2021);
        ValueRange range = year.range(ChronoField.MONTH_OF_YEAR);
        System.out.printf("2021年的月份范围为:%d~%d", range.getMinimum(), range.getMaximum());
    }
}

输出结果:

2021年的月份范围为:1~12

在上述示例中,我们使用了Year类的of()方法创建了一个表示2021年的实例。然后,我们调用了range()方法并传递了ChronoField.MONTH_OF_YEAR字段,该字段表示月份。最后,我们通过ValueRange对象获取了月份的取值范围,并将其输出到控制台。

除了ChronoField.MONTH_OF_YEAR字段之外,Year类还支持许多其他字段,例如ChronoField.YEAR_OF_ERA(年份)、ChronoField.DAY_OF_MONTH(一月中的日期)、ChronoField.DAY_OF_YEAR(一年中的日期)等等。我们可以根据具体需求传递不同的字段来获取不同的取值范围。

需要注意的是getValueRange()方法也可以获取到要获取字段取值范围,在使用时可更换。