从像这样的字符串创建Set的最有效方法是什么
val string = "Set(1,3,3,4,5)"
val mySet = string.toSet[Int]
res0: Set[Int] = Set(1,3,4,5)
我想创建这个toSet
方法。
答案 0 :(得分:5)
implicit class StringWithToIntSet(val self: String) extends AnyVal {
def toIntSet: Set[Int] = {
val Re = """Set\((.*)\)""".r
self match {
case Re(inner) => inner.split(",").map(_.toInt).toSet
}
}
}
然后:
scala> "Set(1,3,3,4,5)".toIntSet
res0: Set[Int] = Set(1, 3, 4, 5)
注意:
toSet
,因为String
已有toSet
方法(创建Set[Char]
)