gpt4 book ai didi

来自字符串的Scala FiniteDuration

转载 作者:行者123 更新时间:2023-12-04 00:38:01 24 4
gpt4 key购买 nike

是否可以解析 StringFiniteDuration在 Scala 中无需编写自定义代码?
Duration上有方法,称为 create ,接受 String ,但是这会产生 Duration并且不确定如何进一步使用它来创建 FiniteDuration从中。 Duration上有几个工厂方法生产 FiniteDuration实例,但那些暗示我必须解析我的字符串以生成它们的参数(它们的签名需要一个 long 和一个 TimeUnit )。

我提到的这些类型来自 scala.concurrent.duration .

谢谢你。

最佳答案

您可以使用您提到的方法来创建 Duration对象(或简单地使用 apply 方法)。然后,您可以检查它是否是 FiniteDuration来自 collect ing 它(因为 FiniteDurationDuration 的子类型),尽管根据您的用例有几种变体:

scala> val finite = Duration("3 seconds")
scala> val infinite = Duration("Inf")
scala> val fd = Some(finite).collect { case d: FiniteDuration => d }
fd: Option[scala.concurrent.duration.FiniteDuration] = Some(3 seconds)
scala> val id = Some(infinite).collect { case d: FiniteDuration => d }
id: Option[scala.concurrent.duration.FiniteDuration] = None

希望它有所帮助。

关于来自字符串的Scala FiniteDuration,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33678853/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com