Share via


VBuffer<T>.GetItemOrDefault Método

Definição

Sobrecargas

GetItemOrDefault(Int32)

Uma variante de GetItemOrDefault(Int32, T) que retorna o valor em vez de passá-lo de volta usando um parâmetro de referência.

GetItemOrDefault(Int32, T)

Obtém o item armazenado nessa estrutura. No caso de um vetor denso, essa é uma pesquisa simples. No caso de um vetor esparso, ele tentará localizar a entrada com esse índice e definir destination para esse valor armazenado ou, se nenhum valor desse tipo for encontrado, atribuirá a ele o valor padrão.

GetItemOrDefault(Int32)

Uma variante de GetItemOrDefault(Int32, T) que retorna o valor em vez de passá-lo de volta usando um parâmetro de referência.

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

Parâmetros

index
Int32

O índice, que deve ser um número não negativo menor que Length.

Retornos

T

O valor armazenado nesse índice ou se esse for um vetor esparso em que essa é uma entrada implícita, o valor padrão para T.

Aplica-se a

GetItemOrDefault(Int32, T)

Obtém o item armazenado nessa estrutura. No caso de um vetor denso, essa é uma pesquisa simples. No caso de um vetor esparso, ele tentará localizar a entrada com esse índice e definir destination para esse valor armazenado ou, se nenhum valor desse tipo for encontrado, atribuirá a ele o valor padrão.

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

Parâmetros

index
Int32

O índice, que deve ser um número não negativo menor que Length.

destination
T

O valor armazenado nesse índice ou se esse for um vetor esparso em que essa é uma entrada implícita, o valor padrão para T.

Comentários

No caso em que IsDense é true, isso levará tempo constante, pois ele é uma pesquisa direta. Para vetores esparsos, no entanto, porque ele deve executar uma pesquisa de biseção nos índices para localizar o valor apropriado, que leva tempo logarítmico em relação ao número de itens representados explicitamente, ou seja, o Length do valor retornado de GetIndices().

Por esse motivo, uma única pesquisa completamente isolada, uma vez que construir ReadOnlySpan<T> como GetValues() não é uma operação livre, pode ser mais eficiente usar esse método. No entanto, se alguém estiver fazendo uma computação mais envolvida envolvendo muitas operações, poderá ser mais rápido utilizar GetValues() e, se apropriado, GetIndices() diretamente.

Aplica-se a