JapaneseChronology resolveDate() method in Java with Example

The resolveDate() method of java.time.chrono.JapaneseChronology class is used to retrieve the japanese date according to Japanese calendar by parsing chrono field associated with a particular long value in a map with the help of particular resolver style.

Syntax:

public JapaneseDate resolveDate(
       Map fieldValues,
       ResolverStyle resolverStyle)

Parameter: This method takes the following argument as a parameter:

  • fieldvalues: this will contain the chrono fields.
  • resolverStyle: this will resolve the chrono field and provide the date.

Return Value: This method returns the local date according to the Japanese calendar by parsing Chrono field associated with a particular long value in a map with the help of particular resolver style.

Below are the examples to illustrate the resolveDate() method:

Example 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
            // JapaneseDate Object
            JapaneseDate hidate
                = JapaneseDate.now();
  
            // getting JapaneseChronology
            // used in JapaneseDate
            JapaneseChronology crono
                = hidate.getChronology();
  
            // creating and initializing HashMap
            HashMap<TemporalField, Long> map
                = new HashMap<TemporalField, Long>();
  
            // 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("JapaneseDate is : "
                               + hidate);
        }
        catch (DateTimeException e) {
            System.out.println("passed parameter can"
                               + " not form a date");
            System.out.println("Exception thrown: "
                               + e);
        }
    }
}


Output:

JapaneseDate is : Japanese Showa 45-01-31

Example 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
            // JapaneseDate Object
            JapaneseDate hidate
                = JapaneseDate.now();
  
            // getting JapaneseChronology
            // used in JapaneseDate
            JapaneseChronology crono
                = hidate.getChronology();
  
            // creating and initializing HashMap
            HashMap<TemporalField, Long> map
                = new HashMap<TemporalField, Long>();
  
            // putting element into HashMap
            map.put((TemporalField)
                        ChronoField.HOUR_OF_AMPM,
                    30l);
  
            // getting the resolveDate with
            // SMART ResolverStyle
            // by using resolveDate() method
            hidate
                = crono.resolveDate(
                    map,
                    ResolverStyle.LENIENT);
  
            // display the result
            System.out.println("JapaneseDate is : "
                               + hidate);
        }
        catch (DateTimeException e) {
            System.out.println("passed parameter can"
                               + " not form a date");
            System.out.println("Exception thrown: "
                               + e);
        }
    }
}


Output:

JapaneseDate is : null

Reference: https://docs.oracle.com/javase/9/docs/api/java/time/chrono/JapaneseChronology.html#resolveDate-java.util.Map-java.time.format.ResolverStyle-