Spec-Zone.ru › ReactiveX

Минимум

выводит элемент из источника Observable, имеющий минимальное значение
Открыть интерактивную диаграмму на rxmarbles.com

Оператор Min работает с Observable, который испускает числа (или элементы, которые могут быть оценены как числа), и испускает один элемент: элемент с наименьшим числом.

См. также

  • Min
  • Введение в Rx: Min, Max, Sum и Average
  • RxMarbles: min

Информация, специфичная для языка

RxGroovy min minBy

В RxGroovy этот оператор не входит в ядро ReactiveX, но является частью отдельного модуля rxjava-math.

min

RxGroovy реализует оператор min. Он принимает необязательный компаратор, который будет использоваться вместо его значения по умолчанию для сравнения значений двух элементов. Если более чем один элемент имеет идентичное минимальное значение, min будет испускать последний такой элемент, испущенный исходным Observable.

minBy

Оператор minBy похож на min, но вместо испускания элемента с минимальным значением, он испускает элемент с минимальным ключом, где этот ключ генерируется на основе функции, которую вы предоставляете оператору minBy

RxJava 1․x min minBy

В RxJava этот оператор не входит в ядро ReactiveX, но является частью отдельного модуля rxjava-math.

min

RxJava реализует оператор min. Он принимает необязательный компаратор, который будет использоваться вместо его значения по умолчанию для сравнения значений двух элементов. Если более чем один элемент имеет идентичное минимальное значение, min будет испускать последний такой элемент, испущенный исходным Observable.

minBy

Оператор minBy похож на min, но вместо испускания элемента с минимальным значением, он испускает элемент с минимальным ключом, где этот ключ генерируется на основе функции, которую вы предоставляете оператору minBy.

RxJS min minBy

min

RxJS реализует оператор min. Он принимает необязательную функцию сравнения, которую будет использовать вместо значения по умолчанию для сравнения значений двух элементов.

Пример кода

var source = Rx.Observable.fromArray([1,3,5,7,9,2,4,6,8]).min();

var subscription = source.subscribe(
  function (x) { console.log('Next: ' + x); },
  function (err) { console.log('Error: ' + err); },
  function () { console.log('Completed'); } );
Next: 1
Completed
minBy

Оператор minBy похож на min, но вместо испускания элемента с минимальным значением, он испускает элемент с минимальным ключом, где этот ключ генерируется на основе функции, которую вы предоставляете оператору minBy. minBy также принимает необязательный второй параметр: функцию сравнения, которую он будет использовать вместо значения по умолчанию для сравнения ключей двух элементов.

minBy испускает список. Если более чем один элемент имеет минимальное значение ключа, каждый такой элемент будет представлен в списке.

Пример кода

var source = Rx.Observable.fromArray([1,3,5,7,9,2,4,6,8,1])
               .minBy( function (x) { return x; } );

var subscription = source.subscribe(
  function (x) { console.log('Next: ' + x); },
  function (err) { console.log('Error: ' + err); },
  function () { console.log('Completed'); } );
Next: 1,1
Completed

min и minBy находятся в следующих дистрибутивах:

  • rx.all.js
  • rx.all.compat.js
  • rx.aggregates.js

Они требуют одного из следующих:

  • rx.js
  • rx.compat.js
  • rx.lite.js
  • rx.lite.compat.js

RxPHP min

RxPHP реализует этот оператор как min.

Возвращает минимальное значение в последовательности Observable в соответствии с указанным компаратором.

Пример кода

//from https://github.com/ReactiveX/RxPHP/blob/master/demo/min/min.php

/* Without comparer */
$source = \Rx\Observable::fromArray([1, 3, 5, 7, 9, 2, 4, 6, 8])
    ->min();

$subscription = $source->subscribe($createStdoutObserver());
Next value: 1
Complete!
//from https://github.com/ReactiveX/RxPHP/blob/master/demo/min/min-with-comparer.php

/* With a comparer */
$comparer = function ($x, $y) {
    if ($x > $y) {
        return 1;
    } elseif ($x < $y) {
        return -1;
    }
    return 0;
};

$source = \Rx\Observable::fromArray([1, 3, 5, 7, 9, 2, 4, 6, 8])
    ->min($comparer);

$subscription = $source->subscribe($createStdoutObserver());
Next value: 1
Complete!

© ReactiveX contributors
Licensed under the Apache License 2.0.
http://reactivex.io/documentation/operators/min.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API