インスタンスメソッド


date(bySetting:value:of:)


特定のコンポーネントを与えられた時刻に設定し、下位のコンポーネントを同じに保つようにして計算された日付を表す新しい Date を返します。コンポーネントにすでにその値がある場合、与えられた日付と同じ日付になる可能性があります。


iOS 8.0+ iPadOS 8.0+ Mac Catalyst 13.0+ macOS 10.10+

tvOS 9.0+ VisionOS 1.0+ WatchOS 2.0+ Xcode 6.0.1+


func date(
bySetting component: Calendar.Component,
value: Int,
of date: Date,
) -> Date?





議論


コンポーネントの値を変更すると、多くの場合、より上位のコンポーネントまたは結合されたコンポーネントも変更する必要があります。たとえば、曜日を木曜日に設定すると、通常は Day コンポーネントの値を変更する必要があり、MonthYear も変更する必要がある場合があります。そのような時間が存在しない場合は、次の使用可能な時間が返されます (これは、たとえば、名目上の目標日とは異なる日、週、月などになる可能性があります)。コンポーネントを矛盾する値に設定すると、他のコンポーネントの変更が強制されます。たとえば、曜日を木曜日に設定すると、Day がシフトし、MonthYear もシフトする可能性があります。このメソッドの正確な動作は実装定義です。たとえば、曜日を木曜日に変更すると、次の木曜日に進むのか、前の木曜日に戻るのか、それとも最も近い木曜日に移動するのか。アルゴリズムは、指定されたコンポーネントの次に大きいコンポーネントにある結果を生成しようとします (このドキュメントの上部にこのマッピングの表があります)。したがって、「木曜日に設定」の例では、指定された日付が含まれる週の木曜日を検索します (前方または後方への移動が可能で、必ずしも最も近い木曜日であるとは限りません)。正確な動作をより細かく制御するには、nextDate(after:matching:matchingPolicy:behavior:direction:) を使用します。





以下も見よ


コンポーネントから日付を計算


func date(from: DateComponents) -> Date?

指定されたコンポーネントから作成された日付を返します。


func date(byAdding: DateComponents, to: Date, wrappingComponents: Bool) -> Date?

与えられた日付にコンポーネントを追加して計算された日付を表す新しい Date を返します。


func date(byAdding: Calendar.Component, value: Int, to: Date, wrappingComponents: Bool) -> Date?

与えられた日付に特定のコンポーネントの量を追加して計算された日付を表す新しい Date を返します。


func date(bySettingHour: Int, minute: Int, second: Int, of: Date, matchingPolicy: Calendar.MatchingPolicy, repeatedTimePolicy: Calendar.RepeatedTimePolicy, direction: Calendar.SearchDirection) -> Date?

指定された Date の与えられた時刻に時間、分、秒を設定して計算された日付を表す新しい Date を返します。














トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ