Swift-セット

スウィフト4 sets 同じタイプの個別の値を格納するために使用されますが、配列のように明確な順序はありません。

要素の順序が問題にならない場合、または重複する値がないことを確認する場合は、配列の代わりにセットを使用できます。(セットは個別の値のみを許可します。)

タイプをセットに格納するには、ハッシュ可能である必要があります。ハッシュ値は、等しいオブジェクトに対して等しいInt値です。たとえば、x == yの場合、x.hashvalue == y.hashvalue

すべての基本的なswift値はデフォルトでハッシュ可能なタイプであり、設定値として使用できます。

セットの作成

次の初期化構文を使用して、特定のタイプの空のセットを作成できます-

var someSet = Set<Character>()     //Character can be replaced by data type of set.

セットへのアクセスと変更

メソッドとプロパティを使用して、セットにアクセスまたは変更できます-

「count」メソッドを使用して、セット内の要素の数を表示できます。

someSet.count        // prints the number of elements

「挿入」メソッドを使用して、セットに値を挿入できます。

someSet.insert("c")   // adds the element to Set.

同様に、isEmptyを使用して、セットが空かどうかを確認できます。

someSet.isEmpty       // returns true or false depending on the set Elements.

「remove」メソッドを使用して、セット内の値を削除できます。

someSet.remove("c")     // removes a element , removeAll() can be used to remove all elements

「contains」メソッドを使用して、セット内の値の存在を確認できます。

someSet.contains("c")     // to check if set contains this value.

セットを反復処理

for-inループを使用してセットを反復処理できます-

for items in someSet {
   print(someSet)
}

//Swift sets are not in an ordered way, to iterate over a set in ordered way use

for items in someSet.sorted() {
   print(someSet)
}

セット操作の実行

迅速なセットで基本的なセット操作を実行できます。

セット操作を実行する方法は次のとおりです-

  • Intersection
  • Union
  • subtracting
let evens: Set = [10,12,14,16,18]
let odds: Set = [5,7,9,11,13]
let primes = [2,3,5,7]
odds.union(evens).sorted()
// [5,7,9,10,11,12,13,14,16,18]
odds.intersection(evens).sorted()
//[]
odds.subtracting(primes).sorted()
//[9, 11, 13]