当前位置: 首页 > 面试题库 >

我想从Java Date中获取Year,Month,Day等,以便与Java中的公历日期进行比较。这可能吗?

东方和煦
2023-03-14
问题内容

我在Java中有一个Date对象,它存储为Java的Date类型。

我也有一个公历创建日期。阳历日期没有参数,因此是今天日期(和时间?)的一个实例。

使用Java日期,我希望能够从Java日期类型中获取年,月,日,小时,分钟和秒,并比较gregoriancalendar日期。

我看到,目前Java日期存储为long,唯一可用的方法似乎只是将long写为格式化的日期字符串。是否可以访问年,月,日等?

我看到了getYear()getMonth()对等的方法Date类已被弃用。我想知道在日期中使用Java Date实例的最佳实践是什么GregorianCalendar

我的最终目标是进行日期计算,以便可以检查Java日期是否在今天日期和时间的数小时,数分钟之内。

我仍然是Java的新手,对此感到有些困惑。


问题答案:

使用类似:

Date date; // your date
// Choose time zone in which you want to interpret your Date
Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("Europe/Paris"));
cal.setTime(date);
int year = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH);
int day = cal.get(Calendar.DAY_OF_MONTH);
// etc.

当心,月份从0开始,而不是1。



 类似资料:
  • 问题内容: 我正在尝试做一些非常简单的事情,但是开始意识到Java中的日期有点雷区。我想要的是让三个整数(一年,一个月和一个日期)通过的组创建一些对象,对其进行一些简单的测试(沿着日期B之前的日期A和1990年1月1日之后的行A)将它们传递给对象,然后通过JDBC将其传递给数据库。 一切都非常简单,并且可以使用构造函数正常运行。当然,该构造函数已弃用,我想避免在正在编写的新代码中使用已弃用的调用。

  • 问题内容: 我想知道在ms-sql(2005)中是否可能遵循以下内容 我基本上想评估与布尔值比较的日期,这是否可以在语句的选择部分中进行? 问题答案: 不直接。您必须使用CASE,CAST表示客户端代码将其解释为布尔值 预期一行或零行的另一种解决方案:

  • 问题内容: 我想执行一个在本机SQL中看起来像这样的查询: 如果我想像这样在Doctrine的查询生成器中实现这一点: 我收到错误异常 [语法错误]第0行,第63行:错误:预期的已知功能,获取了’YEAR’ 如何使用Doctrines查询构建器实现查询? 笔记: 我知道Doctrine的Native SQL。我已经尝试过了,但是这导致了我的生产数据库表和开发数据库表使用不同名称的问题。我想与数据库

  • 我有一个应用程序,从一个api接收一些数据,我想比较它们,但不知道如何做。 来自api的日期在不同的模板中,加上它的字符串,所以我无法比较。 如果收到的日期早于当前日期,我想显示一条错误消息。 以下是api日期的来源(我已经在控制台上打印出来): 这是日期时间。现在在颤振: 有没有办法比较它们?

  • 问题内容: 我在数据库中有时间戳,在应用程序中我有日期。我喜欢编写hibernate标准,以便hibernate可以提取所有与日期匹配的条目,而不是时间部分。例如 在数据库时间戳记中 2011-12-01 15:14:14 在应用程序中,我确实具有java.util.Date,默认情况下具有时间部分。 我的问题是,当我使用以下代码从数据库中搜索条目时,我什么也没得到 提前致谢 问题答案: 如果您正

  • 我正在尝试比较日期,因为我在html中使用日期从用户那里获取输入并将其发送到servlet以验证它或知道它是否是今天的日期,这是我的试用版,它只适用于两位数的月份,因为它将月份打印为5而不是05 我觉得代码看起来很悲伤。