Все
определяет, соответствуют ли все элементы, испускаемые Observable, некоторым критериям
Передайте предикатную функцию оператору Все, которая принимает элемент, испускаемый исходным Observable, и возвращает логическое значение на основе оценки этого элемента. Все возвращает Observable, который испускает одно логическое значение: true тогда и только тогда, когда исходный Observable завершается нормально, и каждый элемент, испускаемый исходным Observable, оценивается как true в соответствии с этим предикатом; false если любой элемент, испускаемый исходным Observable, оценивается как false в соответствии с этим предикатом.
См. также
Информация, специфичная для языка
RxGroovy all
RxGroovy реализует этот оператор как all. По умолчанию он не работает на каком-либо конкретном Планировщике. Следующий пример демонстрирует, как использовать этот оператор:
Пример кода
numbers = Observable.from([1, 2, 3, 4, 5]);
println("all even?" )
numbers.all({ 0 == (it % 2) }).subscribe({ println(it); });
println("all positive?");
numbers.all({ 0 < it }).subscribe({ println(it); }); all even? false all positive? true
- Javadoc:
all(Func1)
RxJava 1․x all
RxJava 1.x реализует этот оператор как all. По умолчанию он не работает на каком-либо конкретном Планировщике.
- Javadoc:
all(Func1)
RxJava 2․x all
RxJava 2.x реализует этот оператор как all. По умолчанию он не работает на каком-либо конкретном Планировщике.
- Javadoc:
all(Predicate)
RxJS every jortSort jortSortUntil
RxJS реализует этот оператор как every. Следующий пример демонстрирует, как использовать этот оператор:
Пример кода
var source = Rx.Observable.of(1,2,3,4,5)
.every(function (x) {
return x < 6;
});
var subscription = source.subscribe(
function (x) { console.log('Next: %s', x); },
function (err) { console.log('Error: %s', err); },
function () { console.log('Completed'); }); Next: true Completed
every находится в следующих дистрибутивах:
rx.all.jsrx.all.compat.jsrx.aggregates.js
Он требует одного из следующих дистрибутивов:
rx.jsrx.compat.jsrx.lite.jsrx.lite.compat.js
Также есть оператор jortSort, который выполняет проверку на всей последовательности элементов, испускаемых исходным Observable. Если эти элементы испускаются в отсортированном порядке, после успешного завершения исходного Observable, Observable, возвращённый из jortSort, испустит true и затем завершится. Если любой из элементов, испускаемых исходным Observable, находится вне порядка сортировки, после успешного завершения исходного Observable, Observable, возвращённый из jortSort, испустит false и затем завершится.
Также есть оператор jortSortUntil. Он не ждёт завершения исходного Observable для оценки его последовательности на сортировку, как jortSort , а ждёт, пока второй Observable испустит элемент для этого.
См. также
Пример кода
var source = Rx.Observable.of(1,2,3,4) // already sorted
.jortSort();
var subscription = source.subscribe(
function (x) { console.log('Next: %s', x); },
function (e) { console.log('Error: %s', e); },
function ( ) { console.log('Completed'); }); Next: true Completed
var source = Rx.Observable.of(3,1,2,4) // not sorted
.jortSort();
var subscription = source.subscribe(
function (x) { console.log('Next: %s', x); },
function (e) { console.log('Error: %s', e); },
function ( ) { console.log('Completed'); }); Next: false Completed
var just = Rx.helpers.just;
var source = Rx.Observable.of(1,2,3,4) // already sorted
.flatmap(function (x) {
return Rx.Observable.timer(1000).map(just(x));
}).jortSortUntil(Rx.Observable.timer(3000);
var subscription = source.subscribe(
function (x) { console.log('Next: %s', x); },
function (e) { console.log('Error: %s', e); },
function ( ) { console.log('Completed'); }); Next: true Completed
var just = Rx.helpers.just;
var source = Rx.Observable.of(3,1,2,4) // not sorted
.flatmap(function (x) {
return Rx.Observable.timer(1000).map(just(x));
}).jortSortUntil(Rx.Observable.timer(3000);
var subscription = source.subscribe(
function (x) { console.log('Next: %s', x); },
function (e) { console.log('Error: %s', e); },
function ( ) { console.log('Completed'); }); Next: false Completed
jortSort и jortSortUntil находятся в следующем дистрибутиве:
rx.sorting.js
Они требуют одного из следующих дистрибутивов:
rx.jsrx.compat.jsrx.lite.jsrx.lite.compat.js
© ReactiveX contributors
Licensed under the Apache License 2.0.
http://reactivex.io/documentation/operators/all.html