RxJava - Just vs From
Estoy obteniendo el mismo resultado cuando usoObservable.just
vsObservable.from
en el siguiente caso:
public void myfunc() {
//swap out just for from here and i get the same results,why ?
Observable.just(1,2,3).subscribe(new Subscriber<Integer>() {
@Override
public void onCompleted() {
Log.d("","all done. oncompleted called");
}
@Override
public void onError(Throwable e) {
}
@Override
public void onNext(Integer integer) {
Log.d("","here is my integer:"+integer.intValue());
}
});
}
Pensé que solo erajust
supongamos que emite un solo elemento yfrom
era emitir elementos en algún tipo de lista. Cual es la diferencia ? También noté quejust
yfrom
toma solo una cantidad limitada de argumentos. entoncesObservable.just(1,2,3,4,5,6,7,8,-1,-2)
esta bien peroObservable.just(1,2,3,4,5,6,7,8,-1,-2,-3)
falla Lo mismo ocurre con, tengo que envolverlo en una lista o conjunto de tipos. Tengo curiosidad por saber por qué no pueden definir argumentos ilimitados.
ACTUALIZACIÓN: Experimenté y vi quejust
no toma una estructura de matrizjust
toma argumentos.from
Lleva una colección. entonces lo siguiente funciona parafrom
pero no parajust
:
public Observable myfunc() {
Integer[] myints = {1,2,3,4,5,6,7,8,-1,-2,9,10,11,12,13,14,15};
return Observable.just(myints).flatMap(new Func1<Integer, Observable<Boolean>>() {
@Override
public Observable<Boolean> call(final Integer integer) {
return Observable.create(new Observable.OnSubscribe<Boolean>() {
@Override
public void call(Subscriber<? super Boolean> subscriber) {
if(integer.intValue()>2){
subscriber.onNext(integer.intValue()>2);
}
}
});
}
});
}
Supongo que esta es la clara diferencia, ¿correcto?