for
Scalaでaを評価すると、不変IndexedSeq
(効率的なランダムアクセスなどの配列のようなパフォーマンス特性を持つコレクション)が得られます。
scala> val s = for (i <- 0 to 9) yield math.random + i
s: scala.collection.immutable.IndexedSeq[Double] = Vector(0.6127056766832756, 1.7137598183155291, ...
for
withはyield
常にを返しますかIndexedSeq
、それとも他のタイプのコレクションクラス(LinearSeq
たとえば、a)を返すこともできますか?それが他のものも返すことができる場合、何が戻りタイプを決定し、どのようにそれに影響を与えることができますか?
Scala2.8.0.RC3を使用しています。