ReadOnlySpan<T> Struct

Definizione

Fornisce una rappresentazione di sola lettura indipendente dai tipi e dalla memoria di una regione contigua di memoria arbitraria.

generic <typename T>
public value class ReadOnlySpan
public readonly ref struct ReadOnlySpan<T>
type ReadOnlySpan<'T> = struct
Public Structure ReadOnlySpan(Of T)

Parametri di tipo

T

Tipo di elementi nell'oggetto ReadOnlySpan<T>.

Ereditarietà
ReadOnlySpan<T>

Commenti

ReadOnlySpan<T> è uno struct di riferimento allocato nello stack e non può mai uscire dall'heap gestito. I tipi di struct ref hanno una serie di restrizioni per garantire che non possano essere promossi all'heap gestito, inclusi quelli che non possono essere boxed, acquisiti in espressioni lambda, assegnati alle variabili di tipo , assegnati alle dynamic variabili, e non possono implementare alcun tipo Objectdi interfaccia.

Un'istanza ReadOnlySpan<T> viene spesso usata per fare riferimento agli elementi di una matrice o di una parte di una matrice. A differenza di una matrice, tuttavia, un'istanza ReadOnlySpan<T> può puntare alla memoria gestita, alla memoria nativa o alla memoria gestita nello stack.

Costruttori

ReadOnlySpan<T>(T[])

Crea un nuovo oggetto ReadOnlySpan<T> su un'intera matrice specificata.

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

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

ReadOnlySpan<T>(Void*, Int32)

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

Proprietà

Empty

Restituisce un oggetto ReadOnlySpan<T> vuoto.

IsEmpty

Restituisce un valore che indica se l'intervallo di sola lettura corrente è vuoto.

Item[Int32]

Ottiene un elemento dall'intervallo di sola lettura in corrispondenza dell'indice in base zero specificato.

Length

Numero di elementi nell'intervallo di sola lettura.

Metodi

CopyTo(Span<T>)

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

Equals(Object)
Obsoleta.
Obsoleta.

Non supportata. Genera un oggetto NotSupportedException.

GetEnumerator()

Restituisce un enumeratore per questo ReadOnlySpan<T>.

GetHashCode()
Obsoleta.

Non supportata. Genera un oggetto NotSupportedException.

GetPinnableReference()

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

Questo metodo è destinato a supportare i compilatori .NET e non deve essere chiamato dal codice utente.

Slice(Int32)

Crea una sezione dall'intervallo di sola lettura corrente che inizia in corrispondenza di un indice specificato.

Slice(Int32, Int32)

Crea una sezione dall'intervallo di sola lettura corrente che inizia in corrispondenza di un indice specificato per una lunghezza specificata.

ToArray()

Copia il contenuto di questo intervallo di sola lettura in una nuova matrice.

ToString()

Restituisce la rappresentazione della stringa di questo oggetto ReadOnlySpan<T>.

TryCopyTo(Span<T>)

Tenta di copiare il contenuto di questo ReadOnlySpan<T> in un Span<T> e restituisce un valore che indica se l'operazione ha avuto esito positivo.

Operatori

Equality(ReadOnlySpan<T>, ReadOnlySpan<T>)

Restituisce un valore che indica se due istanze di ReadOnlySpan<T> sono uguali.

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

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

Implicit(T[] to ReadOnlySpan<T>)

Definisce una conversione implicita di una matrice in ReadOnlySpan<T>.

Inequality(ReadOnlySpan<T>, ReadOnlySpan<T>)

Restituisce un valore che indica se due istanze di ReadOnlySpan<T> non sono uguali.

Metodi di estensione

ToImmutableArray<T>(ReadOnlySpan<T>)

Produrre una matrice di contenuti non modificabile dagli elementi specificati.

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

Esegue la ricerca di un valore in un'intera matrice ReadOnlySpan<T> ordinata usando l'interfaccia generica IComparable<T> specificata.

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

Esegue la ricerca di un valore specifico in un'intera matrice ReadOnlySpan<T> ordinata usando il tipo generico TComparer specificato.

BinarySearch<T,TComparable>(ReadOnlySpan<T>, TComparable)

Esegue la ricerca di un valore in un'intera matrice ReadOnlySpan<T> ordinata usando il tipo generico TComparable specificato.

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

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

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

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

Contains<T>(ReadOnlySpan<T>, T)

Indica se un valore specificato viene trovato in un intervallo di sola lettura. I valori vengono confrontati tramite IEquatable{T}.Equals(T).

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

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

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

Cerca il valore specificato e restituisce l'indice della prima occorrenza. I valori vengono confrontati tramite IEquatable{T}.Equals(T).

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

Cerca la sequenza specificata e restituisce l'indice della prima occorrenza. I valori vengono confrontati tramite IEquatable{T}.Equals(T).

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

Cerca il primo indice di uno dei valori specificati simile alla chiamata di IndexOf eseguita più volte con l'operatore logico OR.

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

Cerca il primo indice di uno dei valori specificati simile alla chiamata di IndexOf eseguita più volte con l'operatore logico OR.

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

Cerca il primo indice di uno dei valori specificati simile alla chiamata di IndexOf eseguita più volte con l'operatore logico OR.

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

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

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

Cerca il primo indice di qualsiasi valore diverso da quello specificato value0 o value1.

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

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

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

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

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

Cerca il valore specificato e restituisce l'indice dell'ultima occorrenza. I valori vengono confrontati tramite IEquatable{T}.Equals(T).

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

Cerca la sequenza specificata e restituisce l'indice dell'ultima occorrenza. I valori vengono confrontati tramite IEquatable{T}.Equals(T).

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

Cerca l'ultimo indice di uno dei valori specificati simile alla chiamata di LastIndexOf eseguita più volte con l'operatore logico OR.

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

Cerca l'ultimo indice di uno dei valori specificati simile alla chiamata di LastIndexOf eseguita più volte con l'operatore logico OR.

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

Cerca l'ultimo indice di uno dei valori specificati simile alla chiamata di LastIndexOf eseguita più volte con l'operatore logico OR.

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

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

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

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

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

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

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

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

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

Determina se due sequenze di sola lettura si sovrappongono in memoria.

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

Determina se due sequenze di sola lettura si sovrappongono in memoria e genera l'offset dell'elemento.

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

Determina l'ordine relativo di due sequenze di sola lettura confrontando i relativi elementi usando IComparable{T}.CompareTo(T).

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

Determina se due sequenze di sola lettura sono uguali confrontando gli elementi con IEquatable{T}.Equals(T).

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

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

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

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

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

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

Trim<T>(ReadOnlySpan<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 di sola lettura.

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

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

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

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

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

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

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

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

Si applica a

Vedi anche