Jak uzyskać sumę wszystkich możliwych wartości z kolekcji [Każdego] tablicy

0

Pytanie

let array = [1,5,6,"50","Hi",54] as [Any]

Mam tablicę, podobny do tego, w którym wymagane jest suma wszystkich możliwych wartości z tej kolekcji Korzystanie z funkcji wyższego rzędu

higher-order-functions ios swift
2021-10-22 05:10:55
1

Najlepsza odpowiedź

2

To działa dla Ints i Strings, które mogą być przekształcone w Int. On odrzuca wiersze, które nie mogą być zamienione, i ignoruje wszystkie inne typy.

let result = array.reduce(into: 0) { partialResult, item in
    switch item {
    case let someInt as Int:
        partialResult += someInt
    case let someString as String:
        if let intValue = Int(someString) {
            partialResult += intValue
        }
    default:
        break
    }
}
2021-10-22 05:18:55

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................