首頁 > 後端開發 > C++ > 如何在 C# 中建立和使用雙向一對一字典?

如何在 C# 中建立和使用雙向一對一字典?

Mary-Kate Olsen
發布: 2025-01-08 10:56:40
原創
147 人瀏覽過

How Can I Create and Use a Bidirectional 1-to-1 Dictionary in C#?

C#中的雙向一對一字典

泛型類別BiDictionaryOneToOne<TFirst, TSecond>代表了一個雙向一對一字典,它允許以獨特且互反的方式在鍵和值之間進行無縫映射。與標準字典不同,BiDictionaryOneToOne確保每個鍵只對應一個值,反之亦然。當您需要在兩個不同的資料集之間建立雙射關係時,此功能非常寶貴。

要建立一個BiDictionaryOneToOne,只需使用所需的鍵和值類型實例化它:

<code class="language-csharp">var bidirectionalDictionary = new BiDictionaryOneToOne<string, int>();</code>
登入後複製

此字典的雙向特性可讓您靈活地搜尋鍵或值。以下方法支援這些操作:

  • GetByFirst(TFirst first): 取得與給定鍵關聯的值。
  • GetBySecond(TSecond second): 取得與給定值關聯的鍵。

同樣,為了確保唯一性,Add方法會驗證鍵和值是否已存在於字典中。如果偵測到重複項,它將拋出ArgumentException異常。

為了提高靈活性,字典也提供了以下「Try」方法:

  • TryAdd(TFirst first, TSecond second): 嘗試新增一對,如果成功則回傳true,如果找到重複項則回傳false
  • TryGetByFirst(TFirst first, out TSecond second): 嘗試檢索鍵的值,如果成功則回傳true,如果找不到鍵則回傳false
  • TryGetBySecond(TSecond second, out TFirst first): 嘗試檢索值對應的鍵,如果成功則回傳true,如果找不到值則回傳false
  • TryRemoveByFirst(TFirst first): 嘗試根據鍵刪除一對,如果成功則回傳true,如果找不到鍵則回傳false
  • TryRemoveBySecond(TSecond second): 嘗試根據值刪除一對,如果成功則回傳true,如果找不到值則回傳false

作為附加功能,BiDictionaryOneToOne允許您使用Clear方法清除所有條目,或透過Count屬性確定字典中的對數。

使用BiDictionaryOneToOne,您可以輕鬆地在資料之間建立雙向關係,確保唯一性,同時提供靈活地搜尋、新增和刪除對的功能。

以上是如何在 C# 中建立和使用雙向一對一字典?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板