Instance Method インスタンスメソッド

update(with:)

Inserts the given element into the set unconditionally. 与えられた要素を集合へと無条件に挿入します。

Declaration 宣言

@discardableResult mutating func update(with newMember: Self.Element) -> Self.Element?

Parameters パラメータ

newMember

An element to insert into the set. この集合に挿入されることになる要素。

Return Value 戻り値

For ordinary sets, an element equal to newMember if the set already contained such a member; otherwise, nil. In some cases, the returned element may be distinguishable from newMember by identity comparison or some other means. 普通の集合に対して、集合がすでにそのようなメンバを含んでいるならば、newMemberに等しい要素;そうでなければ、nil。いくつかの場合には、返される要素は、同一性比較または何らかの他の意味でnewMemberから区別可能であるかもしれません。

For sets where the set type and element type are the same, like OptionSet types, this method returns any intersection between the set and [newMember], or nil if the intersection is empty. OptionSet型など、集合型と要素型が同じであるところの集合に対して、このメソッドは集合と[newMember]の間の何らかの交叉、または交叉が空ならばnilを返します。

Discussion 解説

If an element equal to newMember is already contained in the set, newMember replaces the existing element. In this example, an existing element is inserted into classDays, a set of days of the week. newMemberに等しい要素が既にこの集合に含まれるならば、newMemberは既存の要素と置き換わります。この例において、既存の要素が、一揃いの曜日classDaysへ挿入されます。


enum DayOfTheWeek: Int {
    case sunday, monday, tuesday, wednesday, thursday,
        friday, saturday
}


var classDays: Set<DayOfTheWeek> = [.monday, .wednesday, .friday]
print(classDays.update(with: .monday))
// Prints "Optional(.monday)"

Default Implementations 省略時実装

OptionSet Implementations

See Also 参照

Adding and Removing Elements 要素の追加と削除