不存在类型变量 U 的实例,因此 Row 符合 Iterable<?延伸你>
no instance(s) of type variable(s) U exists so that Row conforms to Iterable<? extends U>
我有一个方法 returns 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);
}
现在我需要创建此方法的一个版本,returns 改为使用 Row 的 Observable。这是我试过的:
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>
flatMapIterable
的类型与您尝试执行的操作不符。您可以使用 map
而不是 flatMapIterable
,或者重新考虑您对 merge
.
的使用
我有一个方法 returns 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);
}
现在我需要创建此方法的一个版本,returns 改为使用 Row 的 Observable。这是我试过的:
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>
flatMapIterable
的类型与您尝试执行的操作不符。您可以使用 map
而不是 flatMapIterable
,或者重新考虑您对 merge
.