有一种简单的方法可以转换

java.lang.Iterable[_]


Scala.Iterable[_]

最佳答案

在Scala 2.8中,这变得容易得多,有两种方法可以实现它。一种是显式的(尽管它使用隐式):

import scala.collection.JavaConverters._

val myJavaIterable = someExpr()

val myScalaIterable = myJavaIterable.asScala

编辑:自从我写这篇文章以来,Scala社区已经达成广泛共识,即JavaConverters是好的,而JavaConversions是不好的,因为它有可能在距离上产生诡异 Action 。因此,根本不要使用JavaConversions!

还有一个更像是隐式隐式的::)
import scala.collection.JavaConversions._

val myJavaIterable = someExpr()

for (magicValue <- myJavaIterable) yield doStuffWith(magicValue)

关于scala - 如何将Java Iterable转换为Scala Iterable?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1072784/

10-12 13:53
查看更多