📌  相关文章
📜  Java中的 OffsetDateTime adjustInto() 方法及示例

📅  最后修改于: 2022-05-13 01:54:46.936000             🧑  作者: Mango

Java中的 OffsetDateTime adjustInto() 方法及示例

Java中 OffsetDateTime 类的adjustInto()方法将指定的时间对象调整为与该对象具有相同的日期和时间。

句法 :

public Temporal adjustInto(Temporal temporal)

参数:此方法接受单个参数temporal ,它指定要调整的目标对象,而不是 null。

返回值:返回调整后的对象,不为空

错误和异常:此方法抛出两个异常,如下所述:

  • DateTimeException : 如果无法进行调整。
  • ArithmeticException : 如果发生数值溢出。

下面的程序说明了 adjustInto() 方法:

程序 1:

// Java program to demonstrate the adjustInto() method
  
import java.time.OffsetDateTime;
import java.time.ZonedDateTime;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // Current time
        ZonedDateTime date = ZonedDateTime.now();
  
        // Prints the current date
        System.out.println("Current date is: " + date);
  
        // Parses the date
        OffsetDateTime date1 = OffsetDateTime.parse("2018-12-12T13:30:30+05:00");
  
        // Function used
        date = (ZonedDateTime)date1.adjustInto(date);
  
        // Prints the date
        System.out.println(date);
    }
}
输出:
Current date is: 2018-12-11T09:53:15.294Z[Etc/UTC]
2018-12-12T13:30:30Z[Etc/UTC]

方案二

// Java program to demonstrate the adjustInto() method
// exceptions
  
import java.time.OffsetDateTime;
import java.time.ZonedDateTime;
  
public class GFG {
    public static void main(String[] args)
    {
        try {
            // Current time
            ZonedDateTime date = ZonedDateTime.now();
  
            // Prints the current date
            System.out.println("Current date is: " + date);
  
            // Parses the date
            OffsetDateTime date1 = OffsetDateTime.parse("2018-13-12T13:30:30+05:00");
  
            // Function used
            date = (ZonedDateTime)date1.adjustInto(date);
  
            // Prints the date
            System.out.println(date);
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}
输出:
Current date is: 2018-12-11T09:53:24.660Z[Etc/UTC]
java.time.format.DateTimeParseException: Text '2018-13-12T13:30:30+05:00' could not be parsed: Invalid value for MonthOfYear (valid values 1 - 12): 13

参考:https: Java/time/temporal/TemporalAdjuster.html