Timeクラス

広告

Timeクラスは時刻を扱うクラスです。現在の時刻を取得したり任意の時刻を設定したりする事が出来ます。

Timeクラスから作成されるTimeオブジェクトは起算時と呼ばれる時刻から現在までの経過した秒数を持っています。起算時は一般的に1970年1月1日午前0時です。経過秒数と言うのはこの起算時から現在まで何秒経過したかということです。

例えば今日の日付が1970年1月2日午前0時だった場合を考えて見ます。起算時から1日後の日時ですので60秒×60分×24時間で経過秒数は86,400秒となります。逆に経過秒数と起算時で計算すれば日時を計算することが出来ます。

Timeオブジェクトを作成するには「new」メソッドを使います。

Timeオブジェクトを格納する変数 = Time.new

作成されたTimeクラスのオブジェクトは作成した現在時刻が格納されています。

具体的には次のように記述します。

t = Time.new

また「new」メソッドと同じく「now」メソッドを使った場合も現在時刻を表すTimeオブジェクトを取得できます。

t = Time.now

どちらも同じですが、「new」メソッドはTimeクラスのオブジェクトを作成して初期値として現在時刻が設定されているというのに対して「now」メソッドの場合は現在時刻を表すTimeクラスのオブジェクトを作成します。その為、現在時刻を取得したいという場合であれば「now」メソッドを使った方が意味合いとしては正しいかと思います。

サンプルプログラム

では簡単なサンプルで試してみます。

LibraryTime1.rb

#! ruby -Ks

t1 = Time.new
print(t1, "¥n")

t2 = Time.now
print(t2, "¥n")

実行結果は次のようになります。

Timeクラスのオブジェクトを作成

( Written by Tatsuo Ikura )