Ale*_*x R 36 language-features scala scala-2.8
如何scala.collection.JavaConversions
取代Stack Overflow问题中的答案迭代Scala中的Java集合(它不起作用,因为"jcl"软件包已经消失了)和迭代使用Scala的Map(它在复杂的测试中对我不起作用)我将尝试归结并在此后发布).
后者实际上是一个Scala Map问题,但我想我需要知道这两个答案才能迭代java.util.Map
.
Rex*_*err 80
在2.8中,您导入scala.collection.JavaConversions._
并用作Scala映射.这是一个例子(在2.8.0.RC1中):
scala> val jmap:java.util.Map[String,String] = new java.util.HashMap[String,String]
jmap: java.util.Map[String,String] = {}
scala> jmap.put("Hi","there")
res0: String = null
scala> jmap.put("So","long")
res1: String = null
scala> jmap.put("Never","mind")
res2: String = null
scala> import scala.collection.JavaConversions._
import scala.collection.JavaConversions._
scala> jmap.foreach(kv => println(kv._1 + " -> " + kv._2))
Hi -> there
Never -> mind
So -> long
scala> jmap.keys.map(_.toUpperCase).foreach(println)
HI
NEVER
SO
Run Code Online (Sandbox Code Playgroud)
如果您特别需要Scala迭代器,请使用jmap.iterator
(在转换导入后).