Java中的 ChronoLocalDate getLong() 方法及示例
Java中ChronoLocalDate接口的getLong()方法得到了这个日期适用的时代。
语法:
public long getLong(TemporalField field)
参数:此方法接受一个强制参数字段,该字段指定要获取的字段且不为空。
返回值:函数返回字段的值。
异常:程序抛出三个异常,如下所述:
- DateTimeException :如果无法获取该字段的值或该值超出该字段的有效值范围,则抛出该异常。
- UnsupportedTemporalTypeException :如果字段不受支持或值的范围超过 long,则抛出。
- ArithmeticException : 如果发生数值溢出则抛出
下面的程序说明了Java中 ChronoLocalDate 的getLong()方法:
程序 1 :
// Program to illustrate the getLong() method
import java.util.*;
import java.time.*;
import java.time.chrono.*;
import java.time.temporal.ChronoField;
public class GfG {
public static void main(String[] args)
{
// Parses the date
ChronoLocalDate dt
= LocalDate.parse("2018-11-27");
// Prints the day number
System.out.println(dt.getLong(
ChronoField.DAY_OF_MONTH));
}
}
输出:
27
方案二:
// Program to illustrate the getLong() method
import java.util.*;
import java.time.*;
import java.time.chrono.*;
import java.time.temporal.ChronoField;
public class GfG {
public static void main(String[] args)
{
// Parses the date
ChronoLocalDate dt
= LocalDate.parse("2018-11-27");
// Prints the day number
System.out.println(dt.getLong(
ChronoField.DAY_OF_YEAR));
}
}
输出:
331
程序 3 :
// Program to illustrate the getLong() method
// Exception Program
import java.util.*;
import java.time.*;
import java.time.chrono.*;
import java.time.temporal.ChronoField;
public class GfG {
public static void main(String[] args)
{
try {
ChronoLocalDate dt
= LocalDate.parse("2017-01-32");
System.out.println(dt.getLong(
ChronoField.DAY_OF_MONTH));
}
catch (Exception e) {
System.out.println(e);
}
}
}
输出:
java.time.format.DateTimeParseException:
Text '2017-01-32' could not be parsed:
Invalid value for DayOfMonth (valid values 1 - 28/31): 32
参考:https://docs.oracle.com/javase/9/docs/api/ Java/time/temporal/TemporalAccessor.html#getLong-java.time.temporal.TemporalField-