将Object Object []数组转换为String []数组RxJava

时间:2016-10-26 21:33:31

标签: java string sorting rx-java

我正在尝试使用RxJava从对象列表中收集一些属性到数组中。我已经编写了代码,但现在我无法正确转换返回类型。所以,我试过这段代码:

Observable.just(rangeList)
            .flatMap(Observable::from)
            .map((range) -> String.format(Locale.getDefault(), "%s (%d)", range, range.getElementNumber()))
            .cast(String.class)
            .toList()
            .toBlocking().first()
            .toArray();

但它仍然返回Object [],我需要String []。

1 个答案:

答案 0 :(得分:2)

您可以使用.toArray()参数:

.toArray(new String[length]);

documentation

中有详细描述
  

以适当的顺序(从第一个元素到最后一个元素)返回包含此列表中所有元素的数组;返回数组的运行时类型是指定数组的运行时类型。如果列表适合指定的数组,则返回其中。否则,将使用指定数组的运行时类型和此列表的大小分配新数组。