除了ObservableSources的数量之外,RxJava2中的concat和concatArray有什么区别吗?
Observable.concat(observable1, observable2)
Observable.concatArray(observable1, observable2, observable3, observable4)
中的最大ObservableSources数
concat(ObservableSource<? extends T> source1, ObservableSource<? extends T> source2, ObservableSource<? extends T> source3, ObservableSource<? extends T> sourc4)
是4,但在
concatArray(ObservableSource<? extends T>... sources)
这是这两者之间的唯一区别吗?
最佳答案
两者之间只有一个小差异:使用concatArray
可能会导致“堆污染”警告,并且由于变量的存在,需要使用@SuppressWarnings("unchecekd")
。作为Java 6级库,我们不能应用@SafeVarargs
。 2-4参数重载有助于避免警告。