RxJava - просто против
Я получаю такой же вывод при использованииObservable.just
противObservable.from
в следующем случае:
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());
}
});
}
Я думал, что просто былjust
предположим, чтобы испустить один элемент иfrom
должен был выбросить предметы в какой-то список. Какая разница ? Я также отметил, чтоjust
а такжеfrom
принимает только ограниченное количество аргументов. такObservable.just(1,2,3,4,5,6,7,8,-1,-2)
хорошо ноObservable.just(1,2,3,4,5,6,7,8,-1,-2,-3)
выходит из строя. То же самое касается, я должен обернуть его в список или массив сортов. Мне просто любопытно, почему они не могут определить неограниченные аргументы.
ОБНОВЛЕНИЕ: я экспериментировал и увидел, чтоjust
не принимает структуру массива этоjust
принимает аргументы.from
берет коллекцию. поэтому следующее работает дляfrom
но не дляjust
:
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);
}
}
});
}
});
}
Я предполагаю, что это будет явной разницей, верно?