2017-07-02 111 views
1

我有这个函数计算字符串内相邻重复字符的数量。Scala - 计算字符串中相邻重复字符的数量

def adjacentCount(s: String) : Int = { 
    var cont = 0 
    for (a <- s.sliding(2)) { 
     if (a(0) == a(1)) cont = cont + 1 
    } 
     cont 
    } 
} 

但我应该创建一个具有完全相同的功能,但只用一成不变的变量或循环指令,在一个“纯粹的”功能性的方式。

回答

5

您可以只使用count方法上迭代

val s = "aabcddd" 

s.sliding(2).count(p => p(0) == p(1)) 
// res1: Int = 3 
+1

谢谢,非常完美! – Edhelvar

相关问题