Scala哈希映射
如何从scala中的哈希映射中选择随机键值对?我有一张如下描述的地图Scala哈希映射,scala,hashmap,akka,Scala,Hashmap,Akka,如何从scala中的哈希映射中选择随机键值对?我有一张如下描述的地图 var map = scala.collection.mutable.Map[(Int,Int),ActorRef]() val random = new Random(); var keys:List[Set(Int,Int)] = map.keySet; var randomKey:(Int,Int) = keys.get( random.nextInt(keys.size())); var value= map.get(
var map = scala.collection.mutable.Map[(Int,Int),ActorRef]()
val random = new Random();
var keys:List[Set(Int,Int)] = map.keySet;
var randomKey:(Int,Int) = keys.get( random.nextInt(keys.size()));
var value= map.get(randomKey);
以下是编译和运行的示例:
import akka.actor.ActorRef
import scala.util.Random
import scala.collection.mutable.{Map => MutableMap}
object RandomMap {
def main(args: Array[String]): Unit = {
val map: MutableMap[(Int, Int), ActorRef] = MutableMap[(Int, Int), ActorRef]((9, 5) -> null, ((15, 1), null))
val random: Random = new Random()
val keys: List[(Int, Int)] = map.keySet.toList
val randomInt: Int = random.nextInt(keys.size)
val randomKey: (Int, Int) = keys(randomInt)
val value: Option[ActorRef] = map.get(randomKey)
println(s"Random key: $randomKey -> $value")
}
}
val pair = map.toIndexedSeq(Random.nextInt(map.size))