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

如何找到从Java午夜开始经过的秒数?

卞博简
2023-03-14
问题内容

我需要一个函数,该函数可以让我从午夜起经过多少秒。我当前正在使用,System.currentTimeMillis()但是它给了我UNIX时间戳。

如果我也能获得毫秒数,那对我来说将是一个额外的奖励。


问题答案:

如果您使用的是Java> = 8,这很容易做到:

ZonedDateTime nowZoned = ZonedDateTime.now();
Instant midnight = nowZoned.toLocalDate().atStartOfDay(nowZoned.getZone()).toInstant();
Duration duration = Duration.between(midnight, Instant.now());
long seconds = duration.getSeconds();

如果您使用的是Java 7或更低版​​本,则必须通过Calendar从午夜开始获取日期,然后减去。

Calendar c = Calendar.getInstance();
long now = c.getTimeInMillis();
c.set(Calendar.HOUR_OF_DAY, 0);
c.set(Calendar.MINUTE, 0);
c.set(Calendar.SECOND, 0);
c.set(Calendar.MILLISECOND, 0);
long passed = now - c.getTimeInMillis();
long secondsPassed = passed / 1000;


 类似资料:
  • 问题内容: 我正在创建一个Android小部件,希望在每晚的午夜更新。我正在使用,我需要找出从当前时间到午夜还剩下多少毫秒。这是我的代码: 如何计算到午夜还有几毫秒? 先感谢您。 问题答案: 使用日历来计算它:

  • 问题内容: 我正在努力计算午夜后的时间: 问题答案: 如果您不关心夏令时的变化,并且假设世界是理想的(不是理想的),则可以从24小时中减去结束与开始之间的持续时间(以开始与结束为间隔):

  • 问题内容: 首先,这是我在Java 1类中遇到的一个简单问题。这是一个静态时间,我已经将其设置为“今天”为8:49:12,因此我要弄清楚这代表了午夜之后的多秒,以及“午夜”之后的秒数。8小时49分钟12秒。现在是我的代码: 我的问题是,我如何获得的时候不知道 从 和 自 午夜。 因此,基本上输出是: 之后的空间是几秒钟。 谢谢,请解释原因,以及如何选择解决方法。我想学习:P 问题答案: 试试这个简

  • 问题内容: 我有一个mysql表,希望每天晚上午夜“清空”它。我在网上搜索了一个答案,却发现没有什么对我有帮助。我有使用javascript来获取当前时间的想法,然后运行一个if语句,看看它是否等于午夜,以及是否要执行删除该信息的php脚本。 Javascript: delete.php: 我已经通过将if语句中的时间设置为比我的实际时间提前几分钟的时间进行了测试,这是行不通的。 问题答案: 实现

  • 问题内容: 我正在实现一个日历视图,我希望它从包含特定日期的一周开始时开始。例如。如果目标日期为2016年2月29日星期一,并且当前日历设置为从星期日开始,那么我希望从2月28日星期日开始。 这看起来应该很简单: 但这失败了: 由于未捕获的异常“ NSInvalidArgumentException”而终止应用程序,原因:“必须指定集合{NSCalendarMatchPreviousTimePre

  • 问题内容: 我有一个对象,我想将它设置为任意时间(比如半夜),这样我可以使用的功能一致,而不用担心时间来检索数据 时 创建的对象。 我尝试使用和通过一些Objective-C方法修改其组件,如下所示: 上述方法的问题在于,您只能设置一个时间单位(),因此您只能精确地选择以下其中一项: 天 月 年 小时 分钟 秒 有没有办法同时设置小时,分钟和秒并保留日期(日/月/年)? 问题答案: 您的声明 上述