我有一个UserBean,如:
THEANO_FLAGS='device=gpu1' python myscript.py
现在,我想循环这个bean列表并获取一个数据列表,如下所示: [{userId,userName,userNumber},{userId,userName,userNumber},...]。 我现在使用它的方式是:
THEANO_FLAGS: Command not found.
还有其他更好的方法来实现这个目标吗?
答案 0 :(得分:1)
flatMap
可以将第二个参数作为结果选择器(这有助于组合结果)
flatMapIterable
将列表转换为Observable
列表中的项目。作为flatMap
,flatMapIterable
可以使用结果选择器
final List<UserBeanData> userBeanDatas = Observable.fromIterable(userBeen)
// emit all numbers and create a UserBeanData for each, using the bean as source
.flatMapIterable(bean -> bean.userNumber, (source, number) -> new UserBeanData(number, source.userId, source.userName))
// transform the observable as a list
.toList()
// get the list
.blockingGet()
请注意,此代码的目标是RxJava 2,但应与RxJava 1一起使用(将Observable.fromIterable
更改为Observable.from
,将blockingGet
更改为toBlocking().first()