共用方式為


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 預設值。

備註

在 為 IsDensetrue 的情況下,這會花費一定的時間,因為它是直接查閱。 不過,對於疏鬆向量,因為它必須在索引上執行雙區段搜尋,以尋找適當的值,其需要相對於明確表示專案數目的對數,也就是說, Length 傳回值的 GetIndices()

基於這個理由,單一完全隔離的查閱,因為建構 ReadOnlySpan<T>GetValues() 不是免費作業,所以使用此方法可能更有效率。 不過,如果其中一個執行涉及許多作業的更多相關計算,則可能更快速地利用,並視需要 GetIndices() 直接使用 GetValues()

適用於