Swift の Set(セット)- 要素の削除

ここでは Swift の Set(セット)から要素を削除する方法についてご説明します。

remove() で Set(セット)から要素を指定して削除する

Swift の Set(セット)では remove() メソッドを使って、要素を指定して削除することができます。

remove() は削除した要素を返すので、削除された要素が必要な時は戻り値を変数に代入するなどして使うことができます。


では、Set(セット)から要素を remove() メソッドを使って削除してみましょう。

remove() が返す Element はオプショナルなので、要素が存在せず nil が返った時のために "Not found" というデフォルト値を指定しています。

var numbers: Set = [1, 2, 3, 4, 5]
print(numbers)

let removed = numbers.remove(4)
print(numbers)
print(removed ?? "Not found")

実行結果は次のようになり、指定した 4 が numbers セットから削除されて、removed に取得できています。

[2, 5, 3, 4, 1]
[2, 5, 3, 1]
4

removeFirst()・popFirst() で Set の最初の要素を削除する

Swift の Set(セット)の最初の要素を削除したい時には removeFirst()popFirst() メソッドを使います。

どちらも Set の一番最初の要素を削除して、戻り値として削除した要素を返します。

二つのメソッドの違いは、popFirst() はセットに要素がなくても大丈夫ですが、removeFirst() はセットに要素がないとエラーになります。

popFirst() の戻り値の要素はオプショナルで、セットが空の時は nil が返ります。


それでは、removeFirst() と popFirst() 使って要素を削除してみましょう。

var numbers: Set = [1, 2, 3, 4, 5]
print(numbers)

let removed1 = numbers.removeFirst()
print(numbers)
print(removed1)

let removed2 = numbers.popFirst()
print(numbers)
print(removed2 ?? "Not found")

実行結果は次のようになり、それぞれ numbers セットの一番前の要素が削除されて、removed1・ removed2 に取得できています。

[3, 4, 2, 1, 5]
[4, 5, 2, 1]
3
[5, 2, 1]
4

Swift の Set(セット)- 要素の削除 1


removeAll() で Set の全ての要素を削除する

Swift の Set(セット)の全ての要素を削除したい時には removeAll() メソッドを使います。

removeAll() を使って全ての要素を削除してみます。

var numbers: Set = [1, 2, 3, 4, 5]
print(numbers)

numbers.removeAll()
print(numbers)

実行結果は次のようになり、全ての要素が削除されているのがわかります。

[5, 3, 1, 2, 4]
[]

以上、Swift の Set(セット)から要素を削除する方法についてご説明しました。

© 2024 iOS 開発入門