Scala中的“未经检查的类型模式”警告?

假设我有一张地图m:Map [A​​ny,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}

相关文章

共收录Twitter的14款开源软件,第1页Twitter的Emoji表情 Tw...
Java和Scala中关于==的区别Java:==比较两个变量本身的值,即...
本篇内容主要讲解“Scala怎么使用”,感兴趣的朋友不妨来看看...
这篇文章主要介绍“Scala是一种什么语言”,在日常操作中,相...
这篇文章主要介绍“Scala Trait怎么使用”,在日常操作中,相...
这篇文章主要介绍“Scala类型检查与模式匹配怎么使用”,在日...