Java中的 IsoChronology resolveDate() 方法与示例
Java.time.chrono.IsoChronology类的resolveDate()方法用于通过在特定解析器样式的帮助下解析与地图中特定 long 值关联的 chrono 字段,根据 Iso 日历检索本地日期。
句法:
public LocalDate resolveDate(
Map fieldValues,
ResolverStyle resolverStyle)
参数:此方法将以下参数作为参数:
- fieldvalues:这将包含计时字段。
- resolverStyle:这将解析 chrono 字段并提供日期。
返回值:此方法在特定解析器样式的帮助下,通过解析与地图中特定长值关联的 Chrono 字段,根据 Iso 日历返回本地日期。
以下是说明resolveDate()方法的示例:
示例 1:
// Java program to demonstrate
// resolveDate() method
import java.util.*;
import java.io.*;
import java.time.*;
import java.time.chrono.*;
import java.time.temporal.*;
import java.time.format.*;
public class GFG {
public static void main(String[] argv)
{
try {
// creating and initializing
// LocalDate Object
LocalDate hidate
= LocalDate.now();
// getting IsoChronology
// used in LocalDate
IsoChronology crono
= hidate.getChronology();
// creating and initializing HashMap
HashMap map
= new HashMap();
// putting element into HashMap
map.put((TemporalField)
ChronoField.EPOCH_DAY,
30l);
// getting the resolveDate with
// SMART ResolverStyle
// by using resolveDate() method
hidate
= crono.resolveDate(
map,
ResolverStyle.LENIENT);
// display the result
System.out.println("LocalDate is : "
+ hidate);
}
catch (DateTimeException e) {
System.out.println("passed parameter can"
+ " not form a date");
System.out.println("Exception thrown: "
+ e);
}
}
}
输出:
LocalDate is : 1970-01-31
示例 2:
// Java program to demonstrate
// resolveDate() method
import java.util.*;
import java.io.*;
import java.time.*;
import java.time.chrono.*;
import java.time.temporal.*;
import java.time.format.*;
public class GFG {
public static void main(String[] argv)
{
try {
// creating and initializing
// LocalDate Object
LocalDate hidate
= LocalDate.now();
// getting IsoChronology
// used in LocalDate
IsoChronology crono
= hidate.getChronology();
// creating and initializing HashMap
HashMap map
= new HashMap();
// putting element into HashMap
map.put((TemporalField)
ChronoField.HOUR_OF_AMPM,
2000l);
// getting the resolveDate with
// SMART ResolverStyle
// by using resolveDate() method
hidate
= crono.resolveDate(
map,
ResolverStyle.LENIENT);
// display the result
System.out.println("LocalDate is : "
+ hidate);
}
catch (DateTimeException e) {
System.out.println(
"passed parameter can"
+ " not form a date");
System.out.println(
"Exception thrown: "
+ e);
}
}
}
输出:
LocalDate is : null
参考: https://docs.oracle.com/javase/9/docs/api/ Java/time/chrono/IsoChronology.html#resolveDate-java.util.Map-java.time.format.ResolverStyle-