S-JIS[2013-06-09] 変更履歴

Scala duration

durationは、Scalaで期間(時間)を扱うパッケージ。


概要

durationは期間(時間)を扱うパッケージ。Scala2.10で導入された。


import scala.concurrent.duration._
備考
scala> 1.day
res0: scala.concurrent.duration.FiniteDuration = 1 day
scala> 2 day
res1: scala.concurrent.duration.FiniteDuration = 2 days
scala> 2 days
res2: scala.concurrent.duration.FiniteDuration = 2 days
scala> 3 hour
res3: scala.concurrent.duration.FiniteDuration = 3 hours
Intの後にdayとかhourとかの期間を表す単語を付けると
その期間を表すオブジェクトになる。
単位に使える単語はDurationConversionsのメソッド。
(day・hour・minute・second・millis・micros・nanos)
scala> 1.day + 2.day
res4: scala.concurrent.duration.FiniteDuration = 3 days
scala> 1.day + 2.hour
res5: scala.concurrent.duration.FiniteDuration = 26 hours
scala> 23.hour + 60.minute
res6: scala.concurrent.duration.FiniteDuration = 1440 minutes
scala> 60.minute - 1.minute
res7: scala.concurrent.duration.FiniteDuration = 59 minutes
期間オブジェクト同士で演算することが出来る。
scala> 1.day.toHours
res8: Long = 24
別の単位への変換。
scala> 3.second.fromNow
res17: scala.concurrent.duration.Deadline = Deadline(44558292423097 nanoseconds)
Deadline…って何に使うのかよく分からない^^;
scala> 2 second span
res21: scala.concurrent.duration.DurationConversions.spanConvert.R = 2 seconds
spanもよく分からないorz

Scala目次へ戻る / 技術メモへ戻る
メールの送信先:ひしだま