如何在scala中将值从map转换为int

时间:2014-09-23 05:58:51

标签: scala scala-collections

private def getInterfaceInfo(rawData: JsValue): NetworkDeviceInterfaceInfo = {
  def getTotalInterfaces(group1: JsValue): Int = {
    var count: Int = 0
    val interfacesList = group1.as[JsObject].fields.groupBy {
      case (key, value) => key.split("_", 2)(1)
    }.map {
      case (key, values) =>
        (key, values.toMap)
    }.map {
      case (key, valuesMap) =>
        val ifType = valuesMap.get(s"ifType_$key").getOrElse()
        if (ifType.toString.contains("6")) {
          count += 1
        }
    }
    return count
  }

//这里在代码val中ifType我得到它的值" 2"我希望它像2 ...任何人都可以从这里帮助我

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您是否要求将包含整数的字符串转换为整数?

你可以做到

"2".toInt

如果你知道它将是一个整数。但是,如果你的字符串是" asdf" .toInt这会产生错误。

如上所述,如果发生异常,您可以将其包装在Try块中,或者您可以创建自己的功能,可以将其转换为#34;安全" (无论你的程序可以使用什么)。