【问题标题】:Lazily evaluation in scala with streams带有流的scala中的惰性评估
【发布时间】:2018-03-21 07:51:43
【问题描述】:

我是否正确假设 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 }
  }
             ^^^^^^^^

谢谢

【问题讨论】:

    标签: scala lazy-evaluation


    【解决方案1】:

    您是对的,因为forAll 将在第一对 c1, c2 不等于时立即返回 false,因此不会生成以下组合。

    【讨论】:

      猜你喜欢
      • 2015-05-29
      • 2014-02-08
      • 1970-01-01
      • 2017-12-28
      • 2020-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多