不存在类型变量 U 的实例,因此 Row 符合 Iterable<? 延伸你>

我有一个返回 ResultSet 的 Observable 的方法:


public static Observable<ResultSet> queryAllAsObservable(Session session, String query, Object... partitionKeys) {

    List<ResultSetFuture> futures = sendQueries(session, query, partitionKeys);

    Scheduler scheduler = Schedulers.io();

    List<Observable<ResultSet>> observables = Lists.transform(futures, (ResultSetFuture future) -> Observable.fromFuture(future, scheduler));

    return Observable.merge(observables);

}

现在我需要创建此方法的一个版本,它返回一个 Observable of Row。这是我试过的:


public static Observable<Row> queryAllAsRowObservable(Session session, String query, Object... partitionKeys) {

    List<ResultSetFuture> futures = sendQueries(session, query, partitionKeys);

    Scheduler scheduler = Schedulers.io();

    List<Observable<ResultSet>> observables = Lists.transform(futures, (ResultSetFuture future) -> Observable.fromFuture(future, scheduler));

    return Observable.merge(observables).flatMapIterable(item -> item.one());

}

但是item -> item.one()被错误标记:


no instance(s) of type variable(s) U exists so that Row conforms to Iterable<? extends U>


天涯尽头无女友
浏览 97回答 1
1回答

心有法竹

flatMapIterable在您尝试执行此操作时,您尝试执行的操作类型错误。您可以使用mapinstead of&nbsp;flatMapIterable,或者重新考虑您对 的使用merge。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java