fold と foldLeft 、およびそれぞれの reduce と reduceLeft がどのように機能するかを理解しようとしています。例として fold と foldLeft を使用しました
scala> val r = List((ArrayBuffer(1, 2, 3, 4),10))
scala> r.foldLeft(ArrayBuffer(1,2,4,5))((x,y) => x -- y._1)
scala> res28: scala.collection.mutable.ArrayBuffer[Int] = ArrayBuffer(5)
scala> r.fold(ArrayBuffer(1,2,4,5))((x,y) => x -- y._1)
<console>:11: error: value _1 is not a member of Serializable with Equals
r.fold(ArrayBuffer(1,2,4,5))((x,y) => x -- y._1)
fold
として機能しなかったのはなぜfoldLeft
ですか? とはSerializable with Equals
? パラメーターのジェネリック型に関して、fold と foldLeft の API シグネチャがわずかに異なることを理解しています。お知らせ下さい。ありがとう。