[Tips] 指定した日付が今日/昨日/明日/週末かを調べるには?

はじめに

指定した日付が、目的とする日なのかを調べたい場合があります。

目的とする日とは、タイトルにもある通り、「今日」「昨日」「明日」「週末」をさします。

今回は、この目的とする日を調べる方法について説明します。

Calendar クラスの使用方法については、過去記事を参照してください。

今日、昨日、明日、週末を調べるには、Calendarクラスが持つ、専用のメソッドを使用します。各メソッドには調べたい日付(Date型の値)を渡します。

メソッド 説明
isDateInToday 指定した日付が「今日」の場合は true を返す
isDateInYesterday 指定した日付が「昨日」の場合は true を返す
isDateInTomorrow 指定した日付が「明日」の場合は true を返す
isDateInWeekend 指定した日付が「週末」の場合は true を返す

以下に使用例を示します。

let cal = Calendar(identifier: .gregorian)
// 現在日時を dt に代入
let dt1 = Date()
// 昨日を求める(-60秒 × 60分 × 24時間)
let dt2 = dt1.addingTimeInterval(-60 * 60 * 24)
// 明日を求める(60秒 × 60分 × 24時間)
let dt3 = dt1.addingTimeInterval(60 * 60 * 24)

// 今日かどうかを調べる
print(Calendar.current.isDateInToday(dt1))
// 昨日かどうかを調べる
print(Calendar.current.isDateInYesterday(dt2))
// 明日かどうかを調べる
print(Calendar.current.isDateInTomorrow(dt3))
// 週末かどうかを調べる
print(Calendar.current.isDateInWeekend(dt1))

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください