今日の曜日をDateクラスを使って記述したいです。
土曜日だった場合だけ表示の内容を変更したいです。
例)
「今日は月曜日」
「今日は土曜日だ!!」
Dateクラスは、Rubyの標準ライブラリの機能です。使用するためには、
require "date"
を記述します。
今日の曜日を取得するときは、
Date.today.wday
のように記述します。
wdayは曜日を0(日曜日)から6(土曜日)の整数で取得することができるメソッドです。
例)
require "date"
day = Date.today.wday
puts day
# 曜日に合わせた数字が出力されます
曜日に合わせた数字は出力できるようになりましたが、文字を出力するにはどのようにすれば良いのでしょうか。
配列と、添字を使用したら取得できそうです。
days = ["日曜日", "月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日" ]
puts days[0]
# 日曜日が出力されます
あとは、土曜日だけ表示を変更する条件分岐を考えれば期待する出力結果になります。
require "date"
day = Date.today.wday
days = ["日曜日", "月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日" ]
if day == 6
puts "今日は#{days[day]}だ!!"
else
puts "今日は#{days[day]}"
end
dayには今日の曜日の数字が代入されています。
daysには配列で日曜日から土曜日が代入されています。
daysの添字にdayとすることで、配列の中から指定の曜日を出力、if文を使って出力結果を変えれば曜日の出力と曜日によって出力内容を変更することができました。