Share via


VBuffer<T>.GetItemOrDefault Metoda

Definice

Přetížení

GetItemOrDefault(Int32)

Varianta , GetItemOrDefault(Int32, T) která vrací hodnotu místo předání zpět pomocí parametru odkazu.

GetItemOrDefault(Int32, T)

Získá položku uloženou v této struktuře. V případě hustého vektoru se jedná o jednoduché vyhledávání. V případě zhuštěného vektoru se pokusí najít položku s tímto indexem a nastavit destination ji na tuto uloženou hodnotu, nebo pokud se žádná taková hodnota nenajde, přiřadí jí výchozí hodnotu.

GetItemOrDefault(Int32)

Varianta , GetItemOrDefault(Int32, T) která vrací hodnotu místo předání zpět pomocí parametru odkazu.

public T GetItemOrDefault (int index);
member this.GetItemOrDefault : int -> 'T
Public Function GetItemOrDefault (index As Integer) As T

Parametry

index
Int32

Index, který musí být nezáporné číslo menší než Length.

Návraty

T

Hodnota uložená v tomto indexu nebo pokud se jedná o řídký vektor, kde se jedná o implicitní položku, výchozí hodnota pro T.

Platí pro

GetItemOrDefault(Int32, T)

Získá položku uloženou v této struktuře. V případě hustého vektoru se jedná o jednoduché vyhledávání. V případě zhuštěného vektoru se pokusí najít položku s tímto indexem a nastavit destination ji na tuto uloženou hodnotu, nebo pokud se žádná taková hodnota nenajde, přiřadí jí výchozí hodnotu.

public void GetItemOrDefault (int index, ref T destination);
member this.GetItemOrDefault : int * 'T -> unit
Public Sub GetItemOrDefault (index As Integer, ByRef destination As T)

Parametry

index
Int32

Index, který musí být nezáporné číslo menší než Length.

destination
T

Hodnota uložená v tomto indexu nebo pokud se jedná o řídký vektor, kde se jedná o implicitní položku, výchozí hodnota pro T.

Poznámky

V případě , že IsDense je true, bude to trvat konstantní dobu, protože se jedná o přímé vyhledávání. Pro řídké vektory však musí provést bisekci vyhledávání indexů, aby se našla odpovídající hodnota, což trvá logaritmický čas vzhledem k počtu explicitně reprezentovaných položek, Length tj. návratové GetIndices()hodnoty .

Z tohoto důvodu je jedno zcela izolované vyhledávání, protože konstrukce ReadOnlySpan<T> jako GetValues() není volná operace, může být efektivnější použít tuto metodu. Pokud ale někdo provádí více zapojené výpočty zahrnující mnoho operací, může být rychlejší využívat GetValues() a v případě potřeby GetIndices() přímo.

Platí pro