它看起来Duration以秒(最多Long.MAX_VALUE)和纳秒(最多999,999,999)存储。那么可能的最大持续时间是:
Duration d = Duration.ofSeconds(Long.MAX_VALUE, 999_999_999);
Run Code Online (Sandbox Code Playgroud)
当我打印它 ( System.out.print(d)) 时,我得到以下信息:
PT2562047788015215H30M7.999999999S
Run Code Online (Sandbox Code Playgroud)
这意味着:2562047788015215 小时 30 分钟和 7.999999999 秒。
Simple:
Duration maxDur = ChronoUnit.FOREVER.getDuration();
Run Code Online (Sandbox Code Playgroud)