如何在scala中使用多个地图上的选项

时间:2017-11-29 19:04:16

标签: scala

我有map和mutlimap,因为map不能有重复键,决定尝试实现multip,这样我就可以拥有双键。

def ListofConnections1(key : String): List[String] = {
  Iterator.iterate(Option(key))(o => db.get(o.head))
    .takeWhile(_.nonEmpty).flatten.toList
}

同样在多地图中实现与上面相同,但不同之处在于,由于multimap,我们有100次可接受的关键

    import collection.mutable.{ HashMap, MultiMap, Set }
val mm = new HashMap[String, Set[String]] with MultiMap[String, String]

mm.addBinding("100", "101")
mm.addBinding("100", "102")


    def ListofConnections2(key : String): List[String] = {
  Iterator.iterate(Option(key))(o => mm.toMap.get(o.head))
    .takeWhile(_.nonEmpty).flatten.toList
}

我正在尝试使用上面的这个功能,但我得到了不同的错误,我不知道如何在这里使用option别名o

    found   : Option[scala.collection.mutable.Set[String]]
 required: Option[String]
             Iterator.iterate(Option(key))(o => mm.get(o.head))

1 个答案:

答案 0 :(得分:1)

这对你有用;

React.PureComponent