Я использовал distinctUntilChanged()
для фильтрации дублированных выбросов в Observable.
Но он отфильтровал разные испускаемые данные Я использовал функцию map()
до и после distinctUntilChanged()
, как показано ниже, и обнаружил только что напечатанные журналы.
..
...
.map(t -> {
Timber.d("hashcode: %d", t.hashCode());
return t;
})
.distinctUntilChanged()
.map(t -> {
Timber.d("hashcode2: %d", t.hashCode());
return t;
})
.replay(1)
.autoConnect(0);
печатные журналы:
hashcode: -1015116098
hashcode: -981267991
Почему не печатался ни один журнал с "hashcode2"?