RynnWorld-Teleop:一种用于数字遥操作的动作条件世界模型
2026/7/24 14:21:05
同样是读取txt文本,为什么要使用字典哈希表,不使用数组呢?
时间复杂度不同。数组遍历的时间复杂度O(n),哈希表时间复杂度O(1)
'''<summary>''' 从字典中读取 Double 值,键不存在或解析失败时返回默认值'''</summary>Private Shared FunctionGetDouble(dict AsDictionary(Of String,String),key As String,defaultVal As Double)As Double Dim val As String=Nothing If Not dict.TryGetValue(key,val)Then Return defaultVal Dim result As Double If Double.TryParse(val,NumberStyles.Float,CultureInfo.InvariantCulture,result)Then Return result Return defaultVal End Function'''<summary>''' 从字典中读取可空 Double 值,键不存在或值为空时返回 Nothing'''</summary>Private Shared FunctionGetNullableDouble(dict AsDictionary(Of String,String),key As String)As Double?Dim val As String=Nothing If Not dict.TryGetValue(key,val)Then Return Nothing If String.IsNullOrEmpty(val)Then Return Nothing Dim result As Double If Double.TryParse(val,NumberStyles.Float,CultureInfo.InvariantCulture,result)Then Return result Return Nothing End Function'''<summary>''' 从字典中读取 Integer 值,键不存在或解析失败时返回默认值'''</summary>Private Shared FunctionGetInt(dict AsDictionary(Of String,String),key As String,defaultVal As Integer)As Integer Dim val As String=Nothing If Not dict.TryGetValue(key,val)Then Return defaultVal Dim result As Integer If Integer.TryParse(val,NumberStyles.Integer,CultureInfo.InvariantCulture,result)Then Return result Return defaultVal End Function'''<summary>''' 从字典中读取枚举值,键不存在或解析失败时返回默认值'''</summary>Private Shared FunctionGetEnum(Of T As Structure)(dict AsDictionary(Of String,String),key As String,defaultVal As T)As T Dim val As String=Nothing If Not dict.TryGetValue(key,val)Then Return defaultVal Dim result As T=Nothing If[Enum].TryParse(Of T)(val,True,result)Then Return result Return defaultVal End Function