當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Swift Set init(_:)用法及代碼示例

用法一

初始化器

init(_:)

從有限的項目序列創建一個新集合。

聲明

init<Source>(_ sequence: Source) where Element == Source.Element, Source : Sequence
Element 符合 Hashable 時可用。

參數

sequence

用作新集合成員的元素。

詳述

使用此初始化程序從現有序列(例如數組或範圍)創建新集合。


let validIndices = Set(0..<7).subtracting([2, 4, 5])
print(validIndices)
// Prints "[6, 0, 1, 3]"

此初始化器還可用於在對集合執行 filter(_:)map(_:) 等序列操作後恢複集合方法。例如,在過濾一組素數以刪除任何低於 10 的素數後,您可以使用此初始化程序創建一個新集合。


let primes: Set = [2, 3, 5, 7, 11, 13, 17, 19, 23]
let laterPrimes = Set(primes.lazy.filter { $0 > 10 })
print(laterPrimes)
// Prints "[17, 19, 23, 11, 13]"

可用版本

iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+

用法二

初始化器

init(_:)

從有限的項目序列創建一個新集合。

聲明

init<S>(_ sequence: S) where S : Sequence, Self.Element == S.Element

參數

sequence

用作新集合成員的元素。

詳述

使用此初始化程序從現有序列(如數組或範圍)創建新集合:


let validIndices = Set(0..<7).subtracting([2, 4, 5])
print(validIndices)
// Prints "[6, 0, 1, 3]"

可用版本

iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+

相關用法


注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 Set init(_:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。