0Pricing
Ruby Academy · レッスン

時刻と日付のクラス

時刻を扱います。

「時刻と日付のクラス」はCoddyKit上の無料Ruby Academyレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはRuby Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Ruby Academyコースには全4レッスンが含まれています。

Timeクラス

Ruby組み込みのTimeクラスは、ある時点を表します。Time.nowを使うと、日付と時刻を含む現在の時刻を取得できます。

t = Time.now
puts t.class
puts(t.year)

特定の時刻を作成する

Time.new(またはTime.local)を使うと、年、月、日、時、分、秒の各要素から時刻を作成できます。

t = Time.new(2026, 5, 30, 14, 30, 0)
puts t.year
puts t.hour
puts t.min

時刻の構成要素を読み取る

Timeでは、year、month、day、hour、min、sec、wday(曜日、0 = 日曜日)などのメソッドを使って各要素を取得できます。

t = Time.new(2026, 5, 30)
puts(t.month)
puts(t.day)
puts(t.wday)

エポック秒

Timeは内部的には、Unixエポック(UTCで1970年1月1日)からの経過秒数です。to_iで取得し、Time.atで時刻に戻せます。

secs = Time.new(2026, 1, 1, 0, 0, 0, '+00:00').to_i
puts secs
puts(Time.at(secs).utc.year)

Dateクラス

時刻を扱わずに暦の日付を扱う場合は、dateライブラリを読み込み、Dateクラスを使います。

require 'date'
d = Date.new(2026, 5, 30)
puts d.class
puts(d.to_s)

今日と現在時刻

Date.todayは現在の日付を返します。DateTime.nowを使うと、時刻も含めて取得できます。

require 'date'
puts(Date.today.class)
puts(DateTime.now.class)

曜日

Dateには、曜日を分かりやすく扱うための述語メソッドや名前が用意されています。

require 'date'
d = Date.new(2026, 5, 30)
puts(d.saturday?)
puts(d.wday)

Date と Time と DateTime の違い

適切なクラスを選択します。

  • Date 暦日のみで、時刻は扱いません
  • Time タイムゾーン付きの正確な瞬間を表し、高速です
  • DateTime 日付と時刻を表し、date ライブラリの一部です

現代の Ruby コードでは、通常 Time が優先されます。

require 'date'
puts(Date.new(2026, 5, 30))
puts(Time.new(2026, 5, 30, 9, 0).hour)

うるう年

Date.leap? を使うと、その年がうるう年かどうかを確認できます。うるう年かどうかによって、2 月の日数が変わります。

require 'date'
puts(Date.leap?(2024))
puts(Date.leap?(2026))

UTC とローカル時刻

Time はローカルタイムゾーンまたは UTC で表せます。utc は UTC に変換し、localtime はローカル時刻に戻します。utc? は現在のモードを確認します。

t = Time.new(2026, 5, 30, 12, 0, 0, '+03:00')
puts(t.utc.hour)
puts(t.utc?)

時刻の比較

Time オブジェクトと Date オブジェクトは <、>、== で比較できるため、直接並べ替えたり順序を確認したりできます。

a = Time.new(2026, 1, 1)
b = Time.new(2026, 6, 1)
puts(a < b)
puts([b, a].min.month)

クイックチェック

時刻情報を含まない暦日を表すクラスはどれですか。

まとめ: Time と Date のクラス

日付と時刻を扱う基本的な型を学びました。

  • 瞬間を表す Time.now / Time.new
  • 構成要素: year、month、day、hour、min、sec、wday
  • to_i と Time.at によるエポック秒
  • date ライブラリの Date / DateTime
  • UTC とローカル時刻、比較、うるう年
require 'date'
puts(Date.today.year)

よくある質問

「時刻と日付のクラス」レッスンは無料ですか?

はい。「時刻と日付のクラス」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Ruby Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Ruby Academyコースには全4レッスンが含まれています。

「時刻と日付のクラス」で何を学びますか?

時刻を扱います。 ブラウザで直接実行するハンズオンコードでRuby Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Ruby Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのRuby Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。

「時刻と日付のクラス」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このRuby Academyレッスンでコードを書いて実行できますか?

はい。すべてのRuby Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 時刻と日付のクラス
  2. 解析とフォーマット
  3. 時刻の算術演算
  4. タイムゾーン
← Ruby Academyに戻る