c# Dictionary<TKey,TValue>.TryAdd

yinghualeihenmei發表於2024-05-08

原文連結:https://learn.microsoft.com/zh-cn/dotnet/fundamentals/code-analysis/quality-rules/ca1864

Dictionary<TKey,TValue>.ContainsKey(TKey) 和 Dictionary<TKey,TValue>.Add 都執行查詢操作,這是冗餘設定。

如果字典中已存在鍵,Dictionary<TKey,TValue>.Add 也會引發異常。 呼叫 Dictionary<TKey,TValue>.TryAdd 更高效,這會返回一個布林值,指示是否已新增該值。 如果鍵已存在,則 TryAdd 不會覆蓋該鍵的值。

TryAdd方法是Dictionary類的一個方法,它是IDictionary介面的一個實現。

TryAdd方法嘗試將鍵值對新增到字典中。如果字典中已經存在指定的鍵,則該鍵值對不會被新增,並且此方法返回false。如果字典中不存在該鍵,則新增該鍵值對,並返回true。

以下是使用TryAdd方法的示例程式碼:

Dictionary<string, int> dictionary = new Dictionary<string, int>();
 
// 嘗試新增一個新的鍵值對
if (dictionary.TryAdd("key1", 10))
{
    Console.WriteLine("新增成功");
}
else
{
    Console.WriteLine("新增失敗,鍵已存在");
}
 
// 再次嘗試新增相同的鍵
if (dictionary.TryAdd("key1", 20))
{
    Console.WriteLine("新增成功");
}
else
{
    Console.WriteLine("新增失敗,鍵已存在");
}
 
// 嘗試新增另一個新的鍵值對
if (dictionary.TryAdd("key2", 30))
{
    Console.WriteLine("新增成功");
}
else
{
    Console.WriteLine("新增失敗,鍵已存在");
}

  

相關文章