語言

VBuffer<T>.GetItemOrDefault 方法

定義

多載

名稱 Description
GetItemOrDefault(Int32)

它的變體 GetItemOrDefault(Int32, T) 是回傳該值,而不是用參考參數回傳。

GetItemOrDefault(Int32, T)

物品會被存放在這個結構裡。 對於密集向量,這是個簡單的查找。 對於稀疏向量,它會嘗試找到該索引的條目,並設 destination 為該儲存值,若未找到該值,則將其指派為預設值。

GetItemOrDefault(Int32)

來源:
VBuffer.cs
來源:
VBuffer.cs
來源:
VBuffer.cs

它的變體 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)

來源:
VBuffer.cs
來源:
VBuffer.cs
來源:
VBuffer.cs

物品會被存放在這個結構裡。 對於密集向量,這是個簡單的查找。 對於稀疏向量,它會嘗試找到該索引的條目,並設 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> as GetValues() do 並非自由運算,使用此方法可能更有效率。 然而,若計算較複雜且涉及多項運算,利用且適當時直接GetIndices()使用GetValues()可能會更快。

適用於