浏览https://github.com/google/guava/wiki/FunctionalExplained我看到了像transform这样的操作,它将转换一个列表但保持相同的基数。如何执行导致不同基数的转换?例如(伪代码)List(1,2,3).transform(i => List(i, i))
->List(1,1,2,2,3,3)
问问题
8018 次
4 回答
44
从版本 13 开始,有transformAndConcat
.FluentIterable
于 2012-12-07T05:51:57.950 回答
7
我认为没有直接翻译,但transform
后面concat
应该是等效的。
于 2012-12-07T05:24:16.130 回答
3
在Eclipse Collections中,collect()
相当于 Scala 的map()
,flatCollect()
相当于 Scala 的flatMap()
.
这是 flatCollect与 Java 8 Lambdas 的示例用法。
注意:我是 Eclipse Collections 的提交者。
于 2012-12-10T17:52:54.673 回答
2
不过要注意一件事:Scala 的 map 方法返回新集合,而 Guava 中的 transform() 方法返回原始集合的转换视图。这是一个非常微妙的区别。您需要确定“查看原始集合”是否适合您的上下文。
于 2014-02-12T20:34:03.110 回答