给定字符串“my_string”,如何将其转换为字符串列表:List("m", "y", "_"...)
包含组件字符
答案 0 :(得分:6)
如果你特别需要List[String]
,那么axel22的回答是好的。但请注意,字符串隐含地表现为Seq[Char]
,它已经允许您访问可能在List
上使用的方法。例如,您可以执行以下操作:
"my_string".filter(_ != 'i') // Gives "my_strng"
换句话说,您通常可以像处理任何其他容器一样处理String
,而无需先将其明确转换为一个容器。
答案 1 :(得分:5)
这应该可以解决问题:
"my_string".map(_.toString).toList
首先隐式将字符串转换为StringOps
,这是一个字符序列,即Seq[Char]
。然后通过将序列中的每个字符转换为字符串,将其映射到字符串(Seq[String]
)的序列。最后,toList
会将其转换为列表字符串,即List[String]
。
答案 2 :(得分:2)
这是另一个技巧:
scala> "my_string" grouped 1
res0: Iterator[String] = non-empty iterator
scala> .toList
res1: List[String] = List(m, y, _, s, t, r, i, n, g)