日期和现在之间的 Java 时间

标签 java date time

我需要帮助用 Java 编写一个函数,该函数接受一个输入日期并告诉我自该日期以来的年数、月数和天数。

例如,“2005 年 7 月 1 日”将输出“6 年 2 个月 2 天”

最佳答案

使用Joda Time - 它使它相对容易:

import org.joda.time.*;

public class Test
{
    public static void main(String[] args)
    {
        LocalDate then = new LocalDate(2005, 7, 1);
        LocalDate today = new LocalDate();

        Period period = new Period(then, today, PeriodType.yearMonthDay());
        System.out.println(period); // P6Y2M2D
        System.out.println(period.getYears()); // 6
        System.out.println(period.getMonths()); // 2
        System.out.println(period.getDays()); //2
    }
}

(与 Date/Calendar 相比,我非常更喜欢 Joda API。它更容易使用,部分原因是通常更喜欢不变性。)

关于日期和现在之间的 Java 时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7294692/

相关文章:

java - 将阿尔巴字符串日期转换为英文日期

SQL : built-in way to detect gaps in a arbitrary series of dates?

iphone - 如何准确同步iPhone之间的时间?

java - 如何使用 Struts 2 提供静态资源(图像、CSS 等)?

java - 如何向我的应用程序用户发送确认电子邮件?

java - 按键事件

mysql - 使用php选择mysql中间隔之间的日期

java - 计算两个小时的字符串之间的差异

JAVA:经过这么多时间后中断线程

java - 当一个列表不稳定时如何比较两个列表的顺序