假设我有一张地图m:Map [Any,Int].现在我想从m中仅获取条目(String,Int)并使用这些条目创建新的映射m1:Map [String,Int].
我正在尝试执行以下操作:
val m1: Map[String,Int] = m collect {case e:(String,Int) => e}
它似乎工作但我得到一个警告:非变量类型参数类型模式(String,Int)中的字符串是未选中的,因为它被擦除消除.
我该如何摆脱警告?
解决方法
你可能想要:
val m1: Map[String,Int] = m collect {case (k:String,v:Int) => k->v}