如何在android中将时间戳与当前时间减去一定的分钟数进行比较

发布于 2024-11-25 12:09:32 字数 158 浏览 1 评论 0原文

我有一个 sql.Timestamp 对象,我需要将它与当前时间减去 45 分钟进行比较,我将如何在 Android 上执行此操作?

我知道我应该使用compareTo方法,因为Timestamp扩展了java.util.Date,我不知道该怎么做是创建比当前时间少45分钟的日期对象。

i have a sql.Timestamp object and i need to compare it to the current time minus 45 minutes, how would i go about doing this on Android?

i know i should use the compareTo Method as Timestamp extends java.util.Date , what i dont know how to do is create the date object 45 mins less than current time.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

2024-12-02 12:09:32

这可能有点大材小用,但您可以创建两个日历实例,一个包含您的时间戳,另一个包含当前时间,然后从后者减去 45 分钟并进行比较。

Calendar then = Calendar.getInstance();
then.setTime(timestamp);
Calendar now = Calendar.getInstance();
now.add(Calendar.MINUTE, -45);
int diff = now.compareTo(then);
// ...

This might be an overkill, but you could create two Calendar instances, one with your timestamp and one with current time, then subtract 45 minutes from the latter and compare them.

Calendar then = Calendar.getInstance();
then.setTime(timestamp);
Calendar now = Calendar.getInstance();
now.add(Calendar.MINUTE, -45);
int diff = now.compareTo(then);
// ...
最笨的告白 2024-12-02 12:09:32

时间戳(和日期)对象可以通过传递 long 类型的值作为构造函数来构造,该值表示自 1970 年 1 月 1 日以来的毫秒数。

毫秒是秒的 1/1000,因此 45 分钟就是 45 * 60 * 1000 毫秒。只需创建两个 Timestamp 实例 - 一个使用表示要比较的时间的长值(如果您还没有 Timestamp 实例),另一个使用表示 45 分钟前的时间的长值 (System.currentTimeMillis() - (45 * 60 * 1000)),然后比较它们。

Timestamp (and Date) objects can be constructed by passing a value of type long as a constructor, with said value representing the number of milliseconds since January 1, 1970.

A millisecond is 1/1000th of a second, so 45 minutes would be 45 * 60 * 1000 milliseconds. Simply create two Timestamp instances - one using the long value that represents the time you want to compare (if you don't already have a Timestamp instance) and one using the long value that represents the time 45 minutes ago (System.currentTimeMillis() - (45 * 60 * 1000)), then compare those.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文