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

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

Java中的 ChronoLocalDate until(ChronoLocalDate) 方法及示例

ChronoLocalDate 接口until()方法用于获取此本地日期与作为参数传递的另一个日期之间的差异,并以 ChronoPeriod 对象的形式返回差异。此操作以年、月和日为单位执行,并以相同的方式返回答案。起点是这个 ChronoLocalDate,终点是作为参数传递的指定日期。当起点是日期之后的终点时,则返回值为负。ISO 日历对于此方法非常重要,因为使用 ISO 日历系统执行计算。
句法:

public ChronoPeriod until(ChronoLocalDate endDateExclusive)

参数:该方法接受一个参数endDateExclusive,它是结束日期,排他,可以是任何年代,不能为空。
返回值:此方法返回此日期与结束日期之间的时间段。
下面的程序说明了 until() 方法:
方案一:

Java
// Java program to demonstrate
// ChronoLocalDate.until() method
 
import java.time.*;
import java.time.temporal.*;
import java.time.chrono.*;
 
public class GFG {
    public static void main(String[] args)
    {
        // create ChronoLocalDate objects
        ChronoLocalDate l1
            = LocalDate
                  .parse("2018-12-06");
 
        ChronoLocalDate l2
            = LocalDate
                  .parse("2018-10-25");
 
        // apply until the method of LocalDate class
        ChronoPeriod result
            = l2.until(l1);
 
        // print results
        System.out.println("Result in Period: "
                           + result);
    }
}


Java
// Java program to demonstrate
// ChronoLocalDate.until() method
 
import java.time.*;
import java.time.temporal.*;
import java.time.chrono.*;
 
public class GFG {
    public static void main(String[] args)
    {
        // create ChronoLocalDate objects
        ChronoLocalDate l1
            = LocalDate
                  .parse("2018-12-06");
 
        ChronoLocalDate l2
            = LocalDate
                  .parse("2018-12-15");
 
        // apply until()
        ChronoPeriod result
            = l2.until(l1);
 
        // print results
        System.out.println("Result in Period: "
                           + result);
    }
}


输出:
Result in Period: P1M11D

方案二:

Java

// Java program to demonstrate
// ChronoLocalDate.until() method
 
import java.time.*;
import java.time.temporal.*;
import java.time.chrono.*;
 
public class GFG {
    public static void main(String[] args)
    {
        // create ChronoLocalDate objects
        ChronoLocalDate l1
            = LocalDate
                  .parse("2018-12-06");
 
        ChronoLocalDate l2
            = LocalDate
                  .parse("2018-12-15");
 
        // apply until()
        ChronoPeriod result
            = l2.until(l1);
 
        // print results
        System.out.println("Result in Period: "
                           + result);
    }
}
输出:
Result in Period: P-9D

参考资料: https://docs.oracle.com/javase/9/docs/api/ Java/time/chrono/ChronoLocalDate.html#until-java.time.chrono.ChronoLocalDate-