【发布时间】:2020-05-01 08:47:53
【问题描述】:
假设我正在编写一个函数Iterator[String] => Iterator[String] 来将计数器附加到相邻的“重复”字符串,如下所示:
def foo(it: Iterator[String]): Iterator[String] = ???
foo(Iterator("a", "a", "b", "a", "a", "a", "c", "a")) // ("a", "a1", "b", "a", "a1", "a2", "c", "a")
我正在编写一个函数来对所有相邻的重复项进行分组(如在运行长度编码中)groupRepeated: Iterator[String] => Iterator[List[String]],然后我可以简单地编写foo。
现在我想知道是否有更简单的解决方案。你有什么建议?
附:我更喜欢使用TraversableOnce 而不是Iterator 的解决方案。
【问题讨论】: