Java中的 OffsetDateTime getLong() 方法及示例
Java中 OffsetDateTime 类的getLong()方法从这个日期时间中获取指定字段的值作为 long。
句法 :
public long getLong(TemporalField field)
参数:此方法接受单个参数字段,该字段指定要获取的字段,而不是 null。
返回值:它返回字段的值。
异常:该函数抛出三个异常,如下所述:
- DateTimeException :如果无法获取该字段的值或该值超出该字段的有效值范围,则抛出该异常。
- UnsupportedTemporalTypeException :如果该字段不受支持或值的范围超过一个 long,则抛出该异常。
- ArithmeticException : 如果发生数值溢出则抛出
下面的程序说明了getLong()方法:
程序 1:
// Java program to demonstrate the getLong() method
import java.time.OffsetDateTime;
import java.time.temporal.ChronoField;
public class GFG {
public static void main(String[] args)
{
// parses a date
OffsetDateTime date = OffsetDateTime.parse("2018-12-03T12:30:30+01:00");
// Prints the value of the specified
// field from this date-time as an long.
System.out.println(date.getLong(ChronoField.CLOCK_HOUR_OF_DAY));
}
}
输出:
12
方案二:
// Java program to demonstrate the getDayOfYear() method
// exceptions
import java.time.OffsetDateTime;
import java.time.temporal.ChronoField;
public class GFG {
public static void main(String[] args)
{
try {
// parses a date
OffsetDateTime date = OffsetDateTime.parse("2018-24-03T12:30:30+01:00");
// Prints the value of the specified
// field from this date-time as an long.
System.out.println(date.getLong(ChronoField.CLOCK_HOUR_OF_DAY));
}
catch (Exception e) {
System.out.println(e);
}
}
}
输出:
java.time.format.DateTimeParseException:
Text '2018-24-03T12:30:30+01:00' could not be parsed:
Invalid value for MonthOfYear (valid values 1 - 12): 24
参考:https: Java/time/temporal/TemporalField.html