XCode 15.0 日本語化計画:New Human Interface Guideline
特定のコンポーネントを与えられた時刻に設定し、下位のコンポーネントを同じに保つようにして計算された日付を表す新しい Date を返します。コンポーネントにすでにその値がある場合、与えられた日付と同じ日付になる可能性があります。
コンポーネントの値を変更すると、多くの場合、より上位のコンポーネントまたは結合されたコンポーネントも変更する必要があります。たとえば、曜日を木曜日に設定すると、通常は Day コンポーネントの値を変更する必要があり、Month と Year も変更する必要がある場合があります。そのような時間が存在しない場合は、次の使用可能な時間が返されます (これは、たとえば、名目上の目標日とは異なる日、週、月などになる可能性があります)。コンポーネントを矛盾する値に設定すると、他のコンポーネントの変更が強制されます。たとえば、曜日を木曜日に設定すると、Day がシフトし、Month と Year もシフトする可能性があります。このメソッドの正確な動作は実装定義です。たとえば、曜日を木曜日に変更すると、次の木曜日に進むのか、前の木曜日に戻るのか、それとも最も近い木曜日に移動するのか。アルゴリズムは、指定されたコンポーネントの次に大きいコンポーネントにある結果を生成しようとします (このドキュメントの上部にこのマッピングの表があります)。したがって、「木曜日に設定」の例では、指定された日付が含まれる週の木曜日を検索します (前方または後方への移動が可能で、必ずしも最も近い木曜日であるとは限りません)。正確な動作をより細かく制御するには、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 を返します。
指定された Date の与えられた時刻に時間、分、秒を設定して計算された日付を表す新しい Date を返します。