Udostępnij za pośrednictwem


VBuffer<T>.GetItemOrDefault Metoda

Definicja

Przeciążenia

GetItemOrDefault(Int32)

Wariant tej GetItemOrDefault(Int32, T) wartości zwraca wartość zamiast przekazywać ją z powrotem przy użyciu parametru odwołania.

GetItemOrDefault(Int32, T)

Pobiera element przechowywany w tej strukturze. W przypadku gęstego wektora jest to proste wyszukiwanie. W przypadku wektora rozrzedzona zostanie podjęta próba znalezienia wpisu z tym indeksem i ustawiona destination na tę przechowywaną wartość lub jeśli taka wartość nie została znaleziona, przypisz jej wartość domyślną.

GetItemOrDefault(Int32)

Wariant tej GetItemOrDefault(Int32, T) wartości zwraca wartość zamiast przekazywać ją z powrotem przy użyciu parametru odwołania.

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

Parametry

index
Int32

Indeks, który musi być liczbą nieujemną mniejszą niż Length.

Zwraca

T

Wartość przechowywana w tym indeksie lub jeśli jest to wektor rozrzedny, gdzie jest to niejawny wpis, wartość domyślna dla T.

Dotyczy

GetItemOrDefault(Int32, T)

Pobiera element przechowywany w tej strukturze. W przypadku gęstego wektora jest to proste wyszukiwanie. W przypadku wektora rozrzedzona zostanie podjęta próba znalezienia wpisu z tym indeksem i ustawiona destination na tę przechowywaną wartość lub jeśli taka wartość nie została znaleziona, przypisz jej wartość domyślną.

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

Indeks, który musi być liczbą nieujemną mniejszą niż Length.

destination
T

Wartość przechowywana w tym indeksie lub jeśli jest to wektor rozrzedny, gdzie jest to niejawny wpis, wartość domyślna dla T.

Uwagi

W przypadku IsDense , gdy parametr ma truewartość , zajmie to stały czas, ponieważ jest to bezpośrednie wyszukiwanie. Jednak w przypadku wektorów rozrzedzeniowych, ponieważ musi wykonać wyszukiwanie bisekcji na indeksach, aby znaleźć odpowiednią wartość, która zajmuje czas logarytmicznie w odniesieniu do liczby jawnie reprezentowanych elementów, czyli Length wartości zwracanej .GetIndices()

Z tego powodu pojedyncze całkowicie izolowane wyszukiwanie, ponieważ konstruowanie ReadOnlySpan<T> tak jak GetValues() nie jest operacją bezpłatną, może być bardziej wydajne, aby użyć tej metody. Jeśli jednak wykonuje się bardziej zaangażowane obliczenia obejmujące wiele operacji, może być szybsze korzystanie GetValues() z nich i, jeśli jest to konieczne, GetIndices() bezpośrednio.

Dotyczy