VBuffer<T>.GetItemOrDefault 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
GetItemOrDefault(Int32) |
的 GetItemOrDefault(Int32, T) 一个变体,它返回值,而不是使用引用参数传回该值。 |
GetItemOrDefault(Int32, T) |
获取存储在此 结构中的项。 对于密集矢量,这是一个简单的查找。
对于稀疏向量,它将尝试查找具有该索引的条目,并将 设置为 |
GetItemOrDefault(Int32)
的 GetItemOrDefault(Int32, T) 一个变体,它返回值,而不是使用引用参数传回该值。
public T GetItemOrDefault (int index);
member this.GetItemOrDefault : int -> 'T
Public Function GetItemOrDefault (index As Integer) As 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)
参数
- destination
- T
存储在该索引处的值,或者,如果这是一个隐式条目的稀疏向量,则为 的 T
默认值。
注解
在 为 true
的情况下IsDense,这需要恒定的时间,因为它是直接查找。 但是,对于稀疏向量,因为它必须对索引执行二部分搜索才能找到适当的值,这需要相对于显式表示的项数(即 Length 的返回值的 )的 GetIndices()对数时间。
出于此原因,单个完全隔离的查找,因为按 方式GetValues()构造ReadOnlySpan<T>不是自由操作,因此使用此方法可能更有效。 但是,如果一个人正在执行涉及许多操作的更多涉及的计算,则使用起来可能更快,并在适当GetIndices()的情况下直接使用GetValues()。