こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、12年目エンジニアです。
この記事では、 Rubyで日付オブジェクトを生成できるDate.newメソッドについて
- Date.newメソッドとは
- Date.newメソッドを使うときの注意点
- Date.newメソッドを使ったサンプルプログラム
と、この記事で丁寧に解説していきます。
前提条件:実行環境について
実行環境は以下の通りです。
OS | Windows10 |
---|---|
Rubyのバージョン | 2.6.6 |
Rubyのインストールは、下の記事をご参考ください。
Date.newメソッドとは
Date.newメソッドとは、引数に指定した年月日の日付オブジェクトを生成して返すメソッドです。
Date.newメソッドを使うには
1 |
require 'date' |
を宣言する必要があります。
require関数は、ライブラリや外部ファイルを読み込むことができる関数です。
詳しくはこちらの記事をご参考ください。
使い方サンプルは以下です。
1 |
sample = Date.new(2023, 5, 26) |
指定した引数は以下の意味をします。
第一引数(任意) | 年 デフォルトは-4712 |
---|---|
第二引数(任意) | 月 デフォルトは1 |
第三引数(任意) | 日 デフォルトは1 |
上記のサンプルだと、年月日すべてを指定しているので変数sampleには
1 |
2023-05-26 |
という日付オブジェクトが返されます。
Date.newメソッドを使うときの注意点
Date.newメソッドを使うときの注意点として、引数には存在する月日しか指定できません。
たとえば
1 |
sample = Date.new(1999, 14, 33) |
と引数に存在しない月と日を指定して実行すると
1 2 3 4 |
Traceback (most recent call last): 2: from date_new_sample.rb:3:in `<main>' 1: from date_new_sample.rb:3:in `new' date_new_sample.rb:3:in `initialize': invalid date (ArgumentError) |
とエラーとなるので、ご注意ください。
では、次の章で実際に使ってみます。
Date.newメソッドを解説するプログラムの概要
Date.newメソッドを解説するプログラムでは引数に
- 何も指定しない
- 年のみ指定
- 年と月のみ指定
- 年月日すべて指定
の4パターンで引数を指定して日付オブジェクトを生成します。
生成したオブジェを表示して引数に指定した内容で生成できているかを確認します。
Rubyサンプルプログラム
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
require 'date' puts "■Date.newメソッドサンプル" no_arg = Date.new() puts "何も指定しない :#{no_arg}" year_only = Date.new(2020) puts "年のみ指定 :#{year_only}" year_month_only = Date.new(2021, 7) puts "年と月のみ指定 :#{year_month_only}" year_month_day = Date.new(2022, 9, 18) puts "年月日すべて指定:#{year_month_day}" |
実行結果
Rubyプログラムを実行するやり方は、以下の記事をご参考ください。
1 2 3 4 5 |
■Date.newメソッドサンプル 何も指定しない :-4712-01-01 年のみ指定 :2020-01-01 年と月のみ指定 :2021-07-01 年月日すべて指定:2022-09-18 |
引数で指定した値の日付オブジェクトが生成できていることが確認できました。
まとめ:Date.newメソッドを使ってみよう!
以上がDate.newメソッドについての解説でした!
あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ
コメント