TryGetValue
是 C# 中的一個方法,用于嘗試從字典(Dictionary)中獲取一個鍵對應的值。如果鍵存在,則返回該值;否則返回默認值。這個方法本身已經很高效,因為它只進行一次查找操作。
然而,如果你想要優化 TryGetValue
的使用,可以考慮以下幾點:
Dictionary<TKey, TValue>.TryGetValue
方法重載,這樣可以避免在調用時進行類型轉換。例如:Dictionary<string, int> myDictionary = new Dictionary<string, int>();
myDictionary.Add("apple", 1);
int value;
if (myDictionary.TryGetValue("apple", out value))
{
Console.WriteLine($"Value: {value}");
}
else
{
Console.WriteLine("Key not found");
}
Dictionary<TKey, TValue>.ContainsKey
方法。這樣可以在一次操作中同時檢查鍵是否存在并獲取其值(如果存在)。例如:Dictionary<string, int> myDictionary = new Dictionary<string, int>();
myDictionary.Add("apple", 1);
if (myDictionary.TryGetValue("apple", out int value))
{
Console.WriteLine($"Value: {value}");
}
else
{
Console.WriteLine("Key not found");
}
HashSet<T>
或 ConcurrentDictionary<TKey, TValue>
,它們在某些情況下可能具有更好的性能。總之,TryGetValue
本身已經很高效,你可以根據具體需求選擇合適的方法來優化使用。