Seq.take<'T> 関数 (F#)
指定された数までシーケンスの要素を返します。
名前空間/モジュール パス: Microsoft.FSharp.Collections.Seq
アセンブリ: FSharp.Core (FSharp.Core.dll 内)
// Signature:
Seq.take : int -> seq<'T> -> seq<'T>
// Usage:
Seq.take count source
パラメーター
例外
例外 |
状態 |
---|---|
入力シーケンスが空の場合にスローされます。 |
|
入力シーケンスが null の場合にスローされます。 |
|
count がシーケンスの要素数を超えている場合にスローされます。 |
戻り値
結果のシーケンス。
解説
Seq.truncate は、例外をスローする代わりに、シーケンスに含まれるのと同じ数の項目を返します。
この関数は、コンパイルされたアセンブリでは Take という名前です。F# 以外の言語から、またはリフレクションを使用してこの関数にアクセスする場合は、この名前を使用します。
使用例
Seq.take を使用する方法と、Seq.truncate との動作の比較を次の例に示します。
let mySeq = seq { for i in 1 .. 10 -> i*i }
let truncatedSeq = Seq.truncate 5 mySeq
let takenSeq = Seq.take 5 mySeq
let truncatedSeq2 = Seq.truncate 20 mySeq
let takenSeq2 = Seq.take 20 mySeq
let printSeq seq1 = Seq.iter (printf "%A ") seq1; printfn ""
// Up to this point, the sequences are not evaluated.
// The following code causes the sequences to be evaluated.
truncatedSeq |> printSeq
truncatedSeq2 |> printSeq
takenSeq |> printSeq
// The following line produces a run-time error (in printSeq):
takenSeq2 |> printSeq
プラットフォーム
Windows 8、Windows 7、Windows Server 2012 で Windows Server 2008 R2
バージョン情報
F# コア ライブラリのバージョン
サポート: ポータブル 2.0、4.0