我是否正确假设s1.toStream将避免在下面函数的第二行中创建不需要的元组?
def areEqual(s1: String, s2: String): Boolean = {
if (s1.length != s2.length) false
else (s1.toStream zip s2).forall { case (c1, c2) => c1 == c2 }
}
^^^^^^^^
由于
答案 0 :(得分:2)
你是对的,因为只要第一对c1,c2不等于forAll
就会返回false,所以它不会产生以下组合。