Span<T> Struct

Definizione

Fornisce una rappresentazione indipendente dai tipi e sicura per la memoria di un'area contigua di memoria arbitraria.

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)

Parametri di tipo

T

Tipo di elementi in Span<T>.

Ereditarietà
Span<T>
Attributi

Commenti

Per altre informazioni su questa API, vedere Osservazioni supplementari sull'API per Span<T>.

Costruttori

Nome Descrizione
Span<T>(T)

Crea un nuovo Span<T> valore di lunghezza 1 intorno al riferimento specificato.

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

Crea un nuovo Span<T> oggetto che include un numero specificato di elementi di una matrice a partire da un indice specificato.

Span<T>(T[])

Crea un nuovo Span<T> oggetto sull'intera matrice specificata.

Span<T>(Void*, Int32)

Crea un nuovo Span<T> oggetto da un numero specificato di elementi a partire da un indirizzo di T memoria specificato.

Proprietà

Nome Descrizione
Empty

Restituisce un oggetto vuoto Span<T> .

IsEmpty

Restituisce un valore che indica se l'oggetto corrente Span<T> è vuoto.

Item[Int32]

Ottiene l'elemento in corrispondenza dell'indice in base zero specificato.

Length

Restituisce la lunghezza dell'intervallo corrente.

Metodi

Nome Descrizione
Clear()

Cancella il contenuto di questo Span<T> oggetto.

CopyTo(Span<T>)

Copia il contenuto di questo Span<T> oggetto in una destinazione Span<T>.

Equals(Object)
Obsoleti.
Obsoleti.

Le chiamate a questo metodo non sono supportate.

Fill(T)

Riempie gli elementi di questo intervallo con un valore specificato.

GetEnumerator()

Restituisce un enumeratore per l'oggetto Span<T>.

GetHashCode()
Obsoleti.

Genera un oggetto NotSupportedException.

GetPinnableReference()

Restituisce un riferimento a un oggetto di tipo T che può essere utilizzato per l'aggiunta.

Questo metodo è progettato per supportare .NET compilatori e non deve essere chiamato dal codice utente.

Slice(Int32, Int32)

Forma una sezione dall'intervallo corrente a partire da un indice specificato per una lunghezza specificata.

Slice(Int32)

Forma una sezione dall'intervallo corrente che inizia in corrispondenza di un indice specificato.

ToArray()

Copia il contenuto di questo intervallo in una nuova matrice.

ToString()

Restituisce la rappresentazione di stringa di questo Span<T> oggetto.

TryCopyTo(Span<T>)

Tenta di copiare l'oggetto corrente Span<T> in una destinazione Span<T> e restituisce un valore che indica se l'operazione di copia è riuscita.

Operatori

Nome Descrizione
Equality(Span<T>, Span<T>)

Restituisce un valore che indica se due Span<T> oggetti sono uguali.

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

Definisce una conversione implicita di un oggetto ArraySegment<T> in un oggetto Span<T>.

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

Definisce una conversione implicita di un oggetto Span<T> in un oggetto ReadOnlySpan<T>.

Implicit(T[] to Span<T>)

Definisce una conversione implicita di una matrice in un oggetto Span<T>.

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

Restituisce un valore che indica se due Span<T> oggetti non sono uguali.

Metodi di estensione

Nome Descrizione
BinarySearch<T,TComparable>(Span<T>, TComparable)

Cerca un intero oggetto ordinato per un valore usando il tipo generico Span<T> specificato TComparable .

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

Cerca un intero oggetto ordinato Span<T> per un valore specificato usando il tipo generico specificato TComparer .

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

Cerca un intero oggetto ordinato Span<T> per un valore usando l'interfaccia generica specificata IComparable<T> .

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

Trova la lunghezza di qualsiasi prefisso comune condiviso tra span e other.

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

Trova la lunghezza di qualsiasi prefisso comune condiviso tra span e other.

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

Indica se un valore specificato viene trovato in un intervallo.

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

Cerca un'occorrenza di uno dei valori specificati values e restituisce true se trovato. Se non viene trovato, restituisce false.

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

Cerca un'occorrenza di uno dei valori specificati values e restituisce true se trovato. Se non viene trovato, restituisce false.

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

Cerca un'occorrenza di value0, value1o value2 nell'intervallo specificato.

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

Cerca un'occorrenza di value0 o value1e restituisce true se trovato. Se non viene trovato, restituisce false.

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

Cerca nell'intervallo specificato qualsiasi valore diverso dall'oggetto specificato values.

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

Cerca nell'intervallo specificato qualsiasi valore diverso dall'oggetto specificato values.

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

Cerca qualsiasi valore diverso da value0, value1o value2.

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

Cerca qualsiasi valore diverso da value0 o value1nell'intervallo specificato.

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

Cerca nell'intervallo specificato qualsiasi valore diverso dall'oggetto specificato value.

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

Cerca qualsiasi valore al di fuori dell'intervallo compreso tra lowInclusive e highInclusive, inclusivo.

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

Cerca qualsiasi valore nell'intervallo compreso tra lowInclusive e highInclusive, inclusivo e restituisce true se trovato. Se non viene trovato, restituisce false.

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

Conta il numero di volte in cui si verifica l'oggetto specificato value nell'oggetto span.

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

Conta il numero di volte in cui si verifica l'oggetto specificato value nell'oggetto span.

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

Determina se la sequenza specificata viene visualizzata alla fine di un intervallo.

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

Cerca la sequenza specificata e restituisce l'indice della prima occorrenza.

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

Cerca il valore specificato e restituisce l'indice della prima occorrenza.

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

Cerca il primo indice di uno dei valori specificati.

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

Cerca il primo indice di uno dei valori specificati.

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

Cerca il primo indice di uno dei valori specificati.

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

Cerca il primo indice di uno dei valori specificati.

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

Cerca il primo indice di qualsiasi valore diverso dall'oggetto specificato values.

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

Cerca il primo indice di qualsiasi valore diverso dall'oggetto specificato values.

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

Cerca il primo indice di qualsiasi valore diverso da value0, value1o value2.

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

Cerca il primo indice di qualsiasi valore diverso dai due valori specificati.

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

Cerca il primo indice di qualsiasi valore diverso dall'oggetto specificato value.

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

Cerca il primo indice di qualsiasi valore al di fuori dell'intervallo tra lowInclusive e highInclusive, inclusivo.

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

Cerca il primo indice di qualsiasi valore nell'intervallo compreso tra lowInclusive e highInclusive, inclusi.

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

Cerca la sequenza specificata e restituisce l'indice dell'ultima occorrenza.

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

Cerca il valore specificato e restituisce l'indice dell'ultima occorrenza.

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

Cerca l'ultimo indice di uno dei valori specificati.

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

Cerca l'ultimo indice di uno dei valori specificati.

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

Cerca l'ultimo indice di uno dei valori specificati.

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

Cerca l'ultimo indice di uno dei valori specificati.

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

Cerca l'ultimo indice di qualsiasi valore diverso dall'oggetto specificato values.

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

Cerca l'ultimo indice di qualsiasi valore diverso dall'oggetto specificato values.

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

Cerca l'ultimo indice di qualsiasi valore diverso da , value1o value2specificatovalue0.

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

Cerca l'ultimo indice di qualsiasi valore diverso dall'oggetto specificato value0 o value1.

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

Cerca l'ultimo indice di qualsiasi valore diverso dall'oggetto specificato value.

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

Cerca l'ultimo indice di qualsiasi valore al di fuori dell'intervallo tra lowInclusive e highInclusive, inclusivo.

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

Cerca l'ultimo indice di qualsiasi valore nell'intervallo compreso tra lowInclusive e highInclusive, inclusi.

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

Determina se un intervallo e un intervallo di sola lettura si sovrappongono nella memoria e restituisce l'offset dell'elemento.

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

Determina se un intervallo e un intervallo di sola lettura si sovrappongono in memoria.

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

Sostituire tutte le occorrenze di oldValue con newValue.

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

Sostituire tutte le occorrenze di oldValue con newValue.

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

Sostituisce in span tutte le occorrenze di uno degli elementi in values con newValue.

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

Sostituisce in span tutti gli elementi, diversi da quelli in values, con newValue.

Reverse<T>(Span<T>)

Inverte la sequenza degli elementi nell'intero intervallo.

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

Determina l'ordine relativo di un intervallo e un intervallo di sola lettura confrontando gli elementi usando IComparable{T}. CompareTo(T).

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

Determina se due sequenze sono uguali confrontando gli elementi usando un oggetto IEqualityComparer<T>.

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

Determina se un intervallo e un intervallo di sola lettura sono uguali confrontando gli elementi usando IEquatable{T}. Equals(T).

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

Ordina gli elementi nell'intero Span<T> oggetto utilizzando .TComparer

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

Ordina gli elementi nell'intero Span<T> oggetto utilizzando l'oggetto specificato Comparison<T>.

Sort<T>(Span<T>)

Ordina gli elementi nell'intero Span<T> oggetto utilizzando l'implementazione IComparable<T> di ogni elemento dell'oggetto Span<T>.

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

Ordina una coppia di intervalli (uno contenente le chiavi e l'altro contenente gli elementi corrispondenti) in base alle chiavi nel primo Span<T> utilizzando l'operatore di confronto specificato.

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

Ordina una coppia di intervalli (uno contenente le chiavi e l'altro contenente gli elementi corrispondenti) in base alle chiavi nel primo Span<T> usando il confronto specificato.

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

Ordina una coppia di intervalli (uno contenente le chiavi e l'altro contenente gli elementi corrispondenti) in base alle chiavi del primo Span<T> usando l'implementazione IComparable<T> di ogni chiave.

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

Determina se una sequenza specificata viene visualizzata all'inizio di un intervallo.

ToImmutableArray<T>(Span<T>)

Converte l'intervallo in una matrice non modificabile.

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

Rimuove tutte le occorrenze iniziali e finali di un set di elementi specificato in un intervallo di sola lettura da un intervallo.

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

Rimuove tutte le occorrenze iniziali e finali di un elemento specificato da un intervallo.

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

Rimuove tutte le occorrenze finali di un set di elementi specificato in un intervallo di sola lettura da un intervallo.

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

Rimuove tutte le occorrenze finali di un elemento specificato da un intervallo.

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

Rimuove tutte le occorrenze iniziali di un set di elementi specificato in un intervallo di sola lettura dall'intervallo.

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

Rimuove tutte le occorrenze iniziali di un elemento specificato dall'intervallo.

Si applica a

Vedi anche