Dans le cas le plus simple , avec Swift 3, vous pouvez utiliser Arrayl' init(_:)initialiseur de pour obtenir un Arraydepuis a Set. init(_:)a la déclaration suivante:
init<S>(_ s: S) where S : Sequence, Element == S.Iterator.Element
Crée un tableau contenant les éléments d'une séquence.
Usage:
let stringSet = Set(arrayLiteral: "car", "boat", "car", "bike", "toy")
let stringArray = Array(stringSet)
print(stringArray)
// may print ["toy", "car", "bike", "boat"]
Cependant , si vous souhaitez également effectuer certaines opérations sur chaque élément de votre Settout en le transformant en un Array, vous pouvez utiliser map, flatMap, sort, filteret d' autres méthodes fonctionnelles fournies par le Collectionprotocole:
let stringSet = Set(["car", "boat", "bike", "toy"])
let stringArray = stringSet.sorted()
print(stringArray)
// will print ["bike", "boat", "car", "toy"]
let stringSet = Set(arrayLiteral: "car", "boat", "car", "bike", "toy")
let stringArray = stringSet.filter { $0.characters.first != "b" }
print(stringArray)
// may print ["car", "toy"]
let intSet = Set([1, 3, 5, 2])
let stringArray = intSet.flatMap { String($0) }
print(stringArray)
// may print ["5", "2", "3", "1"]
let intSet = Set([1, 3, 5, 2])
// alternative to `let intArray = Array(intSet)`
let intArray = intSet.map { $0 }
print(intArray)
// may print [5, 2, 3, 1]
let array = Array(someSet)fonctionne également dans Swift 2