Поделиться через


VBuffer<T>.GetItemOrDefault Метод

Определение

Перегрузки

GetItemOrDefault(Int32)

Вариант GetItemOrDefault(Int32, T) , который возвращает значение, а не передает его обратно с помощью ссылочного параметра.

GetItemOrDefault(Int32, T)

Возвращает элемент, хранящийся в этой структуре. В случае плотного вектора это простой поиск. В случае разреженного вектора он попытается найти запись с этим индексом и задать destination для этого сохраненного значения или, если такое значение не найдено, назначьте ему значение по умолчанию.

GetItemOrDefault(Int32)

Вариант GetItemOrDefault(Int32, T) , который возвращает значение, а не передает его обратно с помощью ссылочного параметра.

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

Параметры

index
Int32

Индекс, который должен быть не отрицательным числом меньше Length.

Возвращаемое значение

T

Значение, хранящееся в этом индексе, или, если это разреженный вектор, где это неявная запись, значение по умолчанию для T.

Применяется к

GetItemOrDefault(Int32, T)

Возвращает элемент, хранящийся в этой структуре. В случае плотного вектора это простой поиск. В случае разреженного вектора он попытается найти запись с этим индексом и задать destination для этого сохраненного значения или, если такое значение не найдено, назначьте ему значение по умолчанию.

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

Параметры

index
Int32

Индекс, который должен быть не отрицательным числом меньше Length.

destination
T

Значение, хранящееся в этом индексе, или, если это разреженный вектор, где это неявная запись, значение по умолчанию для T.

Комментарии

В случае , где IsDense имеет значение true, это займет постоянное время, так как поиск выполняется напрямую. Однако для разреженных векторов, поскольку он должен выполнять поиск бисекции по индексам, чтобы найти соответствующее значение, что занимает логарифмическое время относительно числа явно представленных элементов, Length то есть возвращаемого GetIndices()значения .

По этой причине один полностью изолированный поиск, так как построение ReadOnlySpan<T> как GetValues() не является свободной операцией, может быть более эффективным использовать этот метод. Однако если вы выполняете более сложные вычисления, включающие множество операций, это может быть быстрее использовать GetValues() и, если это необходимо, GetIndices() напрямую.

Применяется к