我希望在小时和整数之间做一个区别(整数是一个小时)。
scala中的哪个函数可以执行此操作?
答案 0 :(得分:2)
如果删除这些后缀(H,min,s),可以尝试java.util.LocalTime
:
LocalTime.parse("09:23:46").minusHours(2).toString
答案 1 :(得分:2)
注意" 09H"的不一致性。和" 2H" - 为什么不是" 02H"?这样可以缩短s.take(2).toInt - d.take(2).toInt
val t = "09H:23min:46s"; val d="2H"
t: String = 09H:23min:46s
d: String = 2H
t.split (":").map (s => if (s.last == d.last) s.replaceAll ("[^0-9]", "").toInt - d.replaceAll ("[^0-9]", "").toInt + s.substring (2) else s).mkString (":")
res179: String = 7H:23min:46s
如果你必须解析" - "我也会把它重写为一个单独的函数。在7的前面加强零是留给读者的练习。