迭代Scala中的Guava ImmutableList

时间:2015-10-03 01:17:40

标签: scala guava

我在Scala中从Guava迭代ImmutableList时遇到了麻烦。我使用它们的唯一原因是因为我正在使用用Java编写的使用Guava API的代码。但是,编译器似乎并不喜欢它。这是我的代码:

for (blockData: IBlockData <- block.P.a) {
  *insert actions here*
}

编译器错误:

Error:(24, 43) value filter is not a member of com.google.common.collect.ImmutableList[net.minecraft.server.v1_8_R3.IBlockData]
for (blockData: IBlockData <- block.P.a) {
                      ^

非常感谢任何帮助。 谢谢!

1 个答案:

答案 0 :(得分:3)

要使用Scala s for表达式,对象必须实现flatMapfilterguava集合不能实现的ScalaJavaimport collection.JavaConverters._ for (blockData: IBlockData <- block.P.a.asScala) { *insert actions here* } Task转换器捆绑在一起,这应该可行:

Paraller.For