Понимание различий между ZIP и CombinElatest с RXSWIFT для параметров последовательностиIOS

Программируем под IOS
Ответить
Anonymous
 Понимание различий между ZIP и CombinElatest с RXSWIFT для параметров последовательности

Сообщение Anonymous »

Я использовал две функции. First CombineLatest :

Код: Выделить всё

        enum Weather {
case cloudy
case sunny
}
let left: Observable = Observable.of(.sunny, .cloudy, .cloudy, .sunny)
let right = Observable.of("Lisbon", "Copenhagen", "London", "Madrid", "Vienna")
let observable = Observable.combineLatest(left, right) { weather, city in
return "It's \(weather) in \(city)"
}
_ = observable.subscribe(onNext: { value in
print(value)
})
< /code>
с выводом: < /p>
Это солнечно в Лиссабоне
Это облачно в Лиссабоне
Облачно в копенгагене
Облачно в Копенхагене
это облачно в лондоне
It's Sunny в лондонском Вена 
и Zip 
:

Код: Выделить всё

        enum Weather {
case cloudy
case sunny
}
let left: Observable = Observable.of(.sunny, .cloudy, .cloudy, .sunny)
let right = Observable.of("Lisbon", "Copenhagen", "London", "Madrid", "Vienna")
let observable = Observable.zip(left, right) { weather, city in
return "It's \(weather) in \(city)"
}
_ = observable.subscribe(onNext: { value in
print(value)
})
< /code>
с выводом: < /p>
Это солнечно в Лиссабоне
Это облачно в Копенгагене
Это облачно в Лондоне
Это солнечно в Мадриде < /pre>
Как это работает? Я понимаю, что ZIP просто отображает значения один к одному, и если нет значения для того же индекса, он просто пропустит его. Но как понять CombinElatest 
?


Подробнее здесь: https://stackoverflow.com/questions/683 ... r-sequence
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»