Swift Combine: Фильтр, наиболее часто используемый оператор

Nov 25 2022
Оператор filter() существует почти во всех языках программирования для коллекций. То, что он делает, такое же, как и с filter(), с которым вы знакомы.

filter()Оператор существует почти во всех языках программирования для коллекций. То, что он делает, совпадает с тем , с filter()чем вы знакомы. По сути, независимо от того, что вы предоставляете в качестве тела фильтра, он будет возвращать значение true или false. И значения будут либо исключены, либо включены.

Пример

let numbers = (1...20) //1 to 20
		.publisher
numbers.filter {
	return $0 > 15
}
.sink {
	print($0) //16, 17, 18, 19, 20
}

При $0 > 15использовании только элементы, размер которых превышает 15, будут переданы в нисходящий поток данных.

Очевидно, вы можете иметь мальчика где угодно.

Прямо сейчас тело просто говорит, что условие фильтра состоит в том, что любое число больше 15 пойдет в нисходящий поток (приемник).

Заключение

  • Что бы вы ни предоставили в качестве тела фильтра, он вернет true или false. И значения будут либо исключены, либо включены.