[Dart]DateTimeを引き算するには?

Dart

どうも、ちょげ(@chogetarou)です。

DateTimeの日付を引き算する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

DateTimeの日付を引き算する方法は、2つあります。

subtractメソッド

1つは、subtractメソッドを使う方法です。

まず、DateTimeからsubtractメソッドを呼び出します。

そして、subtractメソッドの引数に減算するDurationを指定します。

var newDt = dt.subtract(Duration(・・・)) //dtからDurationを引き算

使用例

void main() {
  var dt = DateTime.now();
  
  var newDt = dt.subtract(Duration(days: 3));
  
  print(dt.day); //16
  print(newDt.day); //13
}

DateTime(year, month, day)

もう1つは、DateTime(year, month, day)を使う方法です。

具体的には、DateTime(year, month, day)でインスタンス化をします。

インスタンス化をする際、DateTimeのそれぞれの引数で引き算をします。

var newDate = DateTime(year - value, month - value2, day - value3)

DateTime(year, month, day)は、第1引数の年、第2引数の月、第3引数の日で日付を作成します。

使用例

void main() {
  var dt = DateTime.now();
  
  //年を3で引く
  var newDt = DateTime(dt.year - 3, dt.month, dt.day);
  
  print(dt.year); //2022
  print(newDt.year); //2019
}

まとめ

DateTimeを引き算する方法は、次の2つです。

  • subtractメソッドを使う方法
  • DateTime(year, month, day)を使う方法

コメント

タイトルとURLをコピーしました