ChronoField.MILLI_OF_SECOND Java21 也没有
时间: 2024-09-21 13:02:50 浏览: 27
`ChronoField.MILLI_OF_SECOND` 是 Java 8 中 `java.time.chrono.ChronoField` 类中的常量,它代表秒中的毫秒数。然而,从 Java 9 开始,许多旧的 ChronoField 被替换为了更简洁的命名,同时引入了新的包结构。
在 Java 21,你可以通过以下方式找到等效的字段:
- 如果你需要精确到毫秒,你可以直接访问 `ChronoUnit.Milliseconds` 或者使用 `ChronoUnit.NANOS` 并除以 1000 来获取类似的概念。
- 如果你想要获取秒内的毫秒数,可以使用 `LocalTime` 类的 `getNano()` 方法,因为纳秒是秒内最小的时间单位,然后除以 1_000_000(10^6)得到毫秒。
示例代码如下:
```java
int nanoOfSecond = localTime.getNano(); // 获取纳秒
int milliOfSecond = nanoOfSecond / ChronoUnit.NANOS_PER_MILLISECOND;
```
请注意,`ChronoField` 相关的常量通常用于历史记录或特定上下文,现代的日期和时间API 更侧重于 `LocalTime`、`LocalDateTime` 和 `ZonedDateTime` 的直接操作。
相关问题
pub const fn as_millis(&self) -> u128 { self.secs as u128 * MILLIS_PER_SEC as u128 + (self.nanos.0 / NANOS_PER_MILLI) as u128 } /// Returns the total number of whole microseconds contained by this `Duration`. /// /// # Examples /// /// ``` /// use std::time::Duration; /// /// let duration = Duration::new(5, 730023852); /// assert_eq!(duration.as_micros(), 5730023); /// ```
这段代码定义了一个名为 `as_millis` 的常量函数和一个名为 `as_micros` 的方法,用于将 `Duration` 结构体表示的时间转换为毫秒和微秒。
`as_millis` 常量函数返回一个 `u128` 类型的值,表示 `Duration` 结构体中的时间总共包含的毫秒数。具体的计算公式是将秒数乘以 `MILLIS_PER_SEC`(每秒的毫秒数)并加上纳秒数除以 `NANOS_PER_MILLI`(每毫秒的纳秒数)。
`as_micros` 方法返回一个 `u128` 类型的值,表示 `Duration` 结构体中的时间总共包含的微秒数。具体的计算公式是将秒数乘以 `MICROS_PER_SEC`(每秒的微秒数)并加上纳秒数除以 `NANOS_PER_MICRO`(每微秒的纳秒数)。
在示例中,创建了一个 `Duration` 结构体 `duration`,表示 5 秒 730023852 纳秒。通过调用 `duration.as_micros()` 方法,将该时间转换为微秒,并断言结果为 5730023。
请注意,这段代码可能依赖于其他未提供的代码和常量定义。如果需要更详细的解释或有其他问题,请提供完整的代码或更多上下文信息。
[yolo] params: iou loss: mse (2), iou_norm: 0.75, obj_norm: 1.00, cls_norm: 1.00, delta_norm: 1.00, scale_x_y: 1.00 Total BFLOPS 65.879 avg_outputs = 532444 Loading weights from yolov3.weights... seen 64, trained: 32013 K-images (500 Kilo-batches_64) Done! Loaded 107 layers from weights-file Cannot load image image_path Detection layer: 82 - type = 28 Detection layer: 94 - type = 28 Detection layer: 106 - type = 28 image_path: Predicted in 1971.707000 milli-seconds.
根据你提供的信息,出现图片无法加载的问题可能是由于以下原因之一:
1. 图片路径错误:请确保你提供给Yolov3的图片路径是正确的,并且能够在系统中找到该图片。你可以再次检查图片路径是否正确,并确保图片文件存在于指定的路径中。
2. 图片格式不支持:Yolov3通常支持常见的图片格式,如JPEG、PNG等。如果你的图片格式不被支持,Yolov3可能无法加载它们。请确保你的图片格式是被支持的。
3. 权重文件问题:你提到正在加载权重文件yolov3.weights,如果权重文件不存在或者损坏,可能会导致无法加载图片。请确保权重文件存在且正确。
4. Yolov3配置问题:Yolov3的配置文件中定义了网络架构和参数配置。如果配置文件中有错误或者不匹配,可能会导致图片无法加载。请确保你正确配置了Yolov3的网络架构和参数。
建议你逐一检查以上可能的原因,排除问题并进行适当的调整。如果问题仍然存在,可以提供更多详细信息以便我能够给出更准确的建议。
阅读全文