代码:
source.subscribe(
string -> {
if( observed ) destination.onNext( reverse( string ) );
}
);
private String reverse( String forward ) {
return new StringBuilder( forward ).reverse().toString();
}
source
被声明为ObservableSource<String>
。
destination
是Observer<String>
。
Android Studio在string
的调用中强调reverse
并告诉我reverse(java.lang.String)
StringReverser
(我的封闭类)无法应用于(<lambda parameter>)
“ 。
我不明白。 source
正在提供字符串,destination
消耗字符串。并且reverse
方法接受String参数。有什么问题?
答案 0 :(得分:0)
正如@Andreas在评论中指出的那样,我正在将RxJava 2 Observer
视为旧式RxJava 1 Subscriber
。不行!一旦我实施了所有4个Observer
方法(onSubscribe(), onNext(), onError() and onComplete()
),错误便消失了。