0

以下のコードは機能します。

Seq.iter (printfn "%d") [|1; 2; 3; 4; 5; 6; 7; 8; 9; 10|]

別の例を次に示します。http://msdn.microsoft.com/en-us/library/ee340408.aspx

配列型は直接シーケンス型を置き換えることができますか?

4

1 に答える 1

5

これは、配列が暗黙的に a seq<'T>(この種の変換が発生する数少ない場所の 1 つ) に変換されるため機能します。

ただし、一部のSeq関数は配列用に最適化されておらず、同等のArray.x関数よりも実行が遅くなります。その結果、入力に一致するモジュールを使用する必要があります ( List.xfor Lists Array.xforArraysなど)。また、戻り値の型も異なります。配列で使用すると、パフォーマンスに影響を与える可能性があるではなくSeq.mapaが返されます (たとえば、配列では n 番目の要素を取得する方がはるかに高速です)。SeqArray

于 2013-06-03T03:01:21.900 に答える