Swift 3: Użyj szybkiego zamknięcia, aby wykonać tę samą operację.
Jeśli tablica jest jak
var numbers = [0, 1, 2, 3, 4, 5]
oraz spis chcesz usunąć
let indexesToBeRemoved: Set = [2, 4]
numbers = numbers
.enumerated()
.filter { !indexesToRemove.contains($0.offset) }
.map { $0.element }
and result
drukowania (numery) // [0, 1, 3, 5]
Swift 3: Oto ta sama operacja z JSON obiektu (słownik)
var arrayString = [
[ "char" : "Z" ],
[ "char" : "Y" ],
[ "char" : "X" ],
[ "char" : "W" ],
[ "char" : "V" ],
[ "char" : "U" ],
[ "char" : "T" ],
[ "char" : "S" ]
]
let arrayIndex = [2, 3, 5]
arrayString = arrayString.enumerated()
.filter { !arrayIndex.contains($0.0 + 1) }
.map { $0.1 }
print(arrayString)
[[ "znak": "Z"], [ "znak": "W"], [ "znak": "U"], [ "Nazwa": „T”], [ „name”: „S”]]
czy jest jakaś szansa, wiesz, jak używać tego samego przykładu w Swift 3? – Raffi
@Raffi: tak, dodałem kod Swift 3 do mojej odpowiedzi –
Dzięki kolego próbowałem zrobić to samemu sobie i to nie działało, myślę, że brakowało mi czegoś dzięki jeszcze raz. – Raffi