【swift】日付の計算方法

概要

日付の計算をします。

開発環境

  1. Mac OS 13.1
  2. Xcode 14.0
/// 日付のいずれかの要素を加減算する
/// - prameter component: 年月日等何を加減算するのか
/// - prameter value: 加減算量
/// - return 加減算後の日付
private func calculateDate(component: Calendar.Component, value: Int) -> Date? {
    let date = Date()
    let afterDate = Calendar.current.date(byAdding: component, value: value, to: date)

    rreturn afterDate
}
// 現在日付から5日後の日付を取得する。
let afterDate = calculateDate(component: .day, value: 5)

print("現在日付:",Date())
print("計算結果:",afterDate!)
現在日付: 2023-01-24 07:56:03 +0000
計算結果: 2023-01-29 07:56:03 +0000

Calendar.Componentに何を設定したら良いか

Calendar.Component 内容
.year 年の加減算ができる
.month 月の加減算ができる
.day 日の加減算ができる
.weekday .dayと同様の挙動
.weekOfYear 週の加減算ができる。 (valueを1にすると1週間後の日付が戻る)
.weekOfMonth .weekOfYearと同様の挙動
.hour 時の加減算ができる
.minute 分の加減算ができる
.second 秒の加減算ができる