Scala reduceLeftとfoldLeft、RangeとStream



Scala Reduceleft Foldleft



目次

1.reduceLeftとfoldLeftの基本的な説明



reduceLeft式:

foldLeft式:



次に、reduceLeftとfoldLeftのインスタンスアプリケーション

3.範囲

範囲を定義する



範囲の生成

4、ストリーム

ストリームを定義する

ストリームを生成する

Stream要素にアクセスします


ストリームを定義する

ストリームは遅延リスト(遅延評価リスト)です

ストリームを生成する

生成されたres34を参照してください:scala.collection.immutable.Stream [Int] = Stream(1、)、Streamの最初の要素の値が評価されると決定されているが、他の要素は評価されていることがわかりました。中古。これが、Streamがレイジーとして定義されている理由です。

需要値に応じたこの怠惰なストリームは、プログラム操作を効率的に実行し、メモリを節約できます。

Stream要素にアクセスします

要素が多すぎるストリームの場合

head:Streamの最初の要素にアクセスします。

tail:ストリームの最初の要素を除くすべての要素にアクセスしますが、評価されるのは2番目の値のみです。