Span<T> 構造体

定義

任意のメモリの連続した領域のタイプ セーフでメモリ セーフな表現を提供します。

generic <typename T>
public value class Span
[System.Runtime.InteropServices.Marshalling.NativeMarshalling(typeof(System.Runtime.InteropServices.Marshalling.SpanMarshaller<,>))]
public readonly ref struct Span<T>
public readonly ref struct Span<T>
[<System.Runtime.InteropServices.Marshalling.NativeMarshalling(typeof(System.Runtime.InteropServices.Marshalling.SpanMarshaller<,>))>]
type Span<'T> = struct
type Span<'T> = struct
Public Structure Span(Of T)

型パラメーター

T

Span<T>内の項目の種類。

継承
Span<T>
属性

注釈

この API の詳細については、「Span<T> の補足 API 解説」を参照してください。

コンストラクター

名前 説明
Span<T>(T)

指定した参照の周囲に長さ 1 の新しい Span<T> を作成します。

Span<T>(T[], Int32, Int32)

指定したインデックスから始まる配列の指定した数の要素を含む新しい Span<T> オブジェクトを作成します。

Span<T>(T[])

指定した配列全体にわたって新しい Span<T> オブジェクトを作成します。

Span<T>(Void*, Int32)

指定したメモリ アドレスから始まる、指定した数のSpan<T>要素から新しいT オブジェクトを作成します。

プロパティ

名前 説明
Empty

空の Span<T> オブジェクトを返します。

IsEmpty

現在の Span<T> が空かどうかを示す値を返します。

Item[Int32]

指定した 0 から始まるインデックス位置にある要素を取得します。

Length

現在のスパンの長さを返します。

メソッド

名前 説明
Clear()

この Span<T> オブジェクトの内容をクリアします。

CopyTo(Span<T>)

この Span<T> の内容をコピー先の Span<T>にコピーします。

Equals(Object)
古い.
古い.

このメソッドの呼び出しはサポートされていません。

Fill(T)

このスパンの要素に指定した値を入力します。

GetEnumerator()

この Span<T>の列挙子を返します。

GetHashCode()
古い.

NotSupportedException をスローします。

GetPinnableReference()

ピン留めに使用できる T 型のオブジェクトへの参照を返します。

このメソッドは、.NET コンパイラをサポートすることを目的としており、ユーザー コードによって呼び出されるものではありません。

Slice(Int32, Int32)

指定した長さの指定したインデックスから始まる、現在のスパンからスライスを形成します。

Slice(Int32)

指定したインデックスから始まる現在のスパンからスライスを形成します。

ToArray()

このスパンの内容を新しい配列にコピーします。

ToString()

この Span<T> オブジェクトの文字列形式を返します。

TryCopyTo(Span<T>)

現在の Span<T> をコピー先の Span<T> にコピーしようとし、コピー操作が成功したかどうかを示す値を返します。

演算子

名前 説明
Equality(Span<T>, Span<T>)

2 つの Span<T> オブジェクトが等しいかどうかを示す値を返します。

Implicit(ArraySegment<T> to Span<T>)

ArraySegment<T>からSpan<T>への暗黙的な変換を定義します。

Implicit(Span<T> to ReadOnlySpan<T>)

Span<T>からReadOnlySpan<T>への暗黙的な変換を定義します。

Implicit(T[] to Span<T>)

配列から Span<T>への暗黙的な変換を定義します。

Inequality(Span<T>, Span<T>)

2 つの Span<T> オブジェクトが等しくないかどうかを示す値を返します。

拡張メソッド

名前 説明
BinarySearch<T,TComparable>(Span<T>, TComparable)

指定したSpan<T>ジェネリック型を使用して、並べ替えられたTComparable全体で値を検索します。

BinarySearch<T,TComparer>(Span<T>, T, TComparer)

指定したSpan<T>ジェネリック型を使用して、並べ替えられたTComparer全体で指定した値を検索します。

BinarySearch<T>(Span<T>, IComparable<T>)

指定したSpan<T>ジェネリック インターフェイスを使用して、並べ替えられたIComparable<T>全体で値を検索します。

CommonPrefixLength<T>(Span<T>, ReadOnlySpan<T>, IEqualityComparer<T>)

spanotherの間で共有される共通プレフィックスの長さを検索します。

CommonPrefixLength<T>(Span<T>, ReadOnlySpan<T>)

spanotherの間で共有される共通プレフィックスの長さを検索します。

Contains<T>(Span<T>, T)

指定した値がスパン内に見つかったかどうかを示します。

ContainsAny<T>(Span<T>, ReadOnlySpan<T>)

指定した values のいずれかが出現する箇所を検索し、見つかった場合は true 返します。 見つからない場合は、 falseを返します。

ContainsAny<T>(Span<T>, SearchValues<T>)

指定した values のいずれかが出現する箇所を検索し、見つかった場合は true 返します。 見つからない場合は、 falseを返します。

ContainsAny<T>(Span<T>, T, T, T)

指定したスパン内の value0value1、または value2 の出現箇所を検索します。

ContainsAny<T>(Span<T>, T, T)

value0またはvalue1の出現箇所を検索し、見つかった場合はtrueを返します。 見つからない場合は、 falseを返します。

ContainsAnyExcept<T>(Span<T>, ReadOnlySpan<T>)

指定したスパンで、指定した values以外の値を検索します。

ContainsAnyExcept<T>(Span<T>, SearchValues<T>)

指定したスパンで、指定した values以外の値を検索します。

ContainsAnyExcept<T>(Span<T>, T, T, T)

value0value1、またはvalue2以外の値を検索します。

ContainsAnyExcept<T>(Span<T>, T, T)

指定したスパンで、 value0 または value1以外の値を検索します。

ContainsAnyExcept<T>(Span<T>, T)

指定したスパンで、指定した value以外の値を検索します。

ContainsAnyExceptInRange<T>(Span<T>, T, T)

lowInclusivehighInclusiveの間の範囲外の値 (両端を含む) を検索します。

ContainsAnyInRange<T>(Span<T>, T, T)

lowInclusivehighInclusiveの範囲内の任意の値を検索し、見つかった場合はtrueを返します。 見つからない場合は、 falseを返します。

Count<T>(Span<T>, ReadOnlySpan<T>)

指定した valuespanで発生した回数をカウントします。

Count<T>(Span<T>, T)

指定した valuespanで発生した回数をカウントします。

EndsWith<T>(Span<T>, ReadOnlySpan<T>)

指定したシーケンスがスパンの末尾に表示されるかどうかを判断します。

IndexOf<T>(Span<T>, ReadOnlySpan<T>)

指定したシーケンスを検索し、最初に出現するインデックスを返します。

IndexOf<T>(Span<T>, T)

指定した値を検索し、最初に出現するインデックスを返します。

IndexOfAny<T>(Span<T>, ReadOnlySpan<T>)

指定した値の最初のインデックスを検索します。

IndexOfAny<T>(Span<T>, SearchValues<T>)

指定した値の最初のインデックスを検索します。

IndexOfAny<T>(Span<T>, T, T, T)

指定した値の最初のインデックスを検索します。

IndexOfAny<T>(Span<T>, T, T)

指定した値の最初のインデックスを検索します。

IndexOfAnyExcept<T>(Span<T>, ReadOnlySpan<T>)

指定した values以外の値の最初のインデックスを検索します。

IndexOfAnyExcept<T>(Span<T>, SearchValues<T>)

指定した values以外の値の最初のインデックスを検索します。

IndexOfAnyExcept<T>(Span<T>, T, T, T)

value0value1、またはvalue2以外の値の最初のインデックスを検索します。

IndexOfAnyExcept<T>(Span<T>, T, T)

指定した 2 つの値以外の値の最初のインデックスを検索します。

IndexOfAnyExcept<T>(Span<T>, T)

指定した value以外の値の最初のインデックスを検索します。

IndexOfAnyExceptInRange<T>(Span<T>, T, T)

lowInclusiveからhighInclusiveまでの範囲を含む、値の最初のインデックスを検索します。

IndexOfAnyInRange<T>(Span<T>, T, T)

lowInclusiveからhighInclusiveまでの範囲の任意の値の最初のインデックスを検索します(両端を含む)。

LastIndexOf<T>(Span<T>, ReadOnlySpan<T>)

指定したシーケンスを検索し、最後に出現したシーケンスのインデックスを返します。

LastIndexOf<T>(Span<T>, T)

指定した値を検索し、最後に出現したインデックスを返します。

LastIndexOfAny<T>(Span<T>, ReadOnlySpan<T>)

指定した値の最後のインデックスを検索します。

LastIndexOfAny<T>(Span<T>, SearchValues<T>)

指定した値の最後のインデックスを検索します。

LastIndexOfAny<T>(Span<T>, T, T, T)

指定した値の最後のインデックスを検索します。

LastIndexOfAny<T>(Span<T>, T, T)

指定した値の最後のインデックスを検索します。

LastIndexOfAnyExcept<T>(Span<T>, ReadOnlySpan<T>)

指定した values以外の値の最後のインデックスを検索します。

LastIndexOfAnyExcept<T>(Span<T>, SearchValues<T>)

指定した values以外の値の最後のインデックスを検索します。

LastIndexOfAnyExcept<T>(Span<T>, T, T, T)

指定した value0value1、または value2以外の値の最後のインデックスを検索します。

LastIndexOfAnyExcept<T>(Span<T>, T, T)

指定した value0 または value1以外の値の最後のインデックスを検索します。

LastIndexOfAnyExcept<T>(Span<T>, T)

指定した value以外の値の最後のインデックスを検索します。

LastIndexOfAnyExceptInRange<T>(Span<T>, T, T)

lowInclusiveから highInclusive までの範囲を含む値の最後のインデックスを検索します。

LastIndexOfAnyInRange<T>(Span<T>, T, T)

lowInclusiveからhighInclusiveまでの範囲の値の最後のインデックスを検索します。値を含みます。

Overlaps<T>(Span<T>, ReadOnlySpan<T>, Int32)

スパンと読み取り専用スパンがメモリ内で重複しているかどうかを判断し、要素のオフセットを出力します。

Overlaps<T>(Span<T>, ReadOnlySpan<T>)

スパンと読み取り専用スパンがメモリ内で重複するかどうかを決定します。

Replace<T>(Span<T>, T, T, IEqualityComparer<T>)

出現するすべての oldValuenewValue で置き換えます。

Replace<T>(Span<T>, T, T)

出現するすべての oldValuenewValue で置き換えます。

ReplaceAny<T>(Span<T>, SearchValues<T>, T)

span values内のすべての要素をnewValueに置き換えます。

ReplaceAnyExcept<T>(Span<T>, SearchValues<T>, T)

span values内の要素以外のすべての要素をnewValueに置き換えます。

Reverse<T>(Span<T>)

スパン全体の要素のシーケンスを反転します。

SequenceCompareTo<T>(Span<T>, ReadOnlySpan<T>)

IComparable{T} を使用して要素を比較することで、スパンと読み取り専用スパンの相対順序を決定します。CompareTo(T)。

SequenceEqual<T>(Span<T>, ReadOnlySpan<T>, IEqualityComparer<T>)

IEqualityComparer<T>を使用して要素を比較することで、2 つのシーケンスが等しいかどうかを判断します。

SequenceEqual<T>(Span<T>, ReadOnlySpan<T>)

IEquatable{T} を使用して要素を比較することで、スパンと読み取り専用スパンが等しいかどうかを判断します。Equals(T)。

Sort<T,TComparer>(Span<T>, TComparer)

TComparerを使用して、Span<T>全体の要素を並べ替えます。

Sort<T>(Span<T>, Comparison<T>)

指定したSpan<T>を使用して、Comparison<T>全体の要素を並べ替えます。

Sort<T>(Span<T>)

Span<T>の各要素のIComparable<T>実装を使用して、Span<T>全体の要素を並べ替えます。

Sort<TKey,TValue,TComparer>(Span<TKey>, Span<TValue>, TComparer)

指定した比較子を使用して、最初の Span<T> のキーに基づいてスパンのペア (1 つはキーを含み、もう 1 つは対応する項目を含む) を並べ替えます。

Sort<TKey,TValue>(Span<TKey>, Span<TValue>, Comparison<TKey>)

指定した比較を使用して、最初の Span<T> のキーに基づいてスパンのペア (1 つはキーを含み、もう 1 つは対応する項目を含む) を並べ替えます。

Sort<TKey,TValue>(Span<TKey>, Span<TValue>)

各キーのIComparable<T>実装を使用して、最初のSpan<T>のキーに基づいてスパンのペア (1 つはキーを含み、もう 1 つは対応する項目を含む) を並べ替えます。

StartsWith<T>(Span<T>, ReadOnlySpan<T>)

指定したシーケンスがスパンの先頭に表示されるかどうかを判断します。

ToImmutableArray<T>(Span<T>)

スパンを変更できない配列に変換します。

Trim<T>(Span<T>, ReadOnlySpan<T>)

スパンから、読み取り専用スパンで指定された要素のセットの先頭と末尾のすべての出現箇所を削除します。

Trim<T>(Span<T>, T)

指定した要素の先頭と末尾のすべての出現箇所をスパンから削除します。

TrimEnd<T>(Span<T>, ReadOnlySpan<T>)

読み取り専用スパンで指定された一連の要素の後続の出現をすべてスパンから削除します。

TrimEnd<T>(Span<T>, T)

指定した要素の末尾のすべての出現箇所をスパンから削除します。

TrimStart<T>(Span<T>, ReadOnlySpan<T>)

読み取り専用スパンで指定された要素セットの先頭のすべての出現箇所をスパンから削除します。

TrimStart<T>(Span<T>, T)

指定した要素の先頭のすべての出現箇所をスパンから削除します。

適用対象

こちらもご覧ください