首頁 > 後端開發 > C++ > 如何用C#實作雙向一對一字典?

如何用C#實作雙向一對一字典?

DDD
發布: 2025-01-08 11:07:40
原創
775 人瀏覽過

How to Implement a Bidirectional 1-to-1 Dictionary in C#?

用 C# 建立雙向 1:1 字典

本文解決了在 C# 中創建雙向、一對一字典的挑戰。 要求是字典,其中每個鍵都有唯一的值,反之亦然,允許從鍵和值進行查找。

解決方案:自訂雙向字典實作

自訂 BiDictionaryOneToOne<TFirst, TSecond> 類別是最有效的解決方案,而不是依賴標準 C# 字典。此類別使用兩個內部字典:一個將 TFirst 對應到 TSecond,另一個將 TSecond 對應到 TFirst。這種雙重映射確保了唯一性和雙向存取。

BiDictionaryOneToOne 類別包含多種有效資料管理的方法:

  • 安全方法(有異常): AddGetByFirstGetBySecondRemoveByFirstRemoveBySecond 如果找不到指定的鍵或值,則會拋出異常。 這提供了清晰的錯誤處理。
  • 嘗試方法(無異常): TryAddTryGetByFirstTryGetBySecondTryRemoveByFirstTryRemoveBySecond 成功時回傳true,否則回傳false,避免異常更靈活的錯誤處理。
  • 實用方法: Count 傳回鍵值對的數量,Clear 刪除所有項目。

這個自訂 BiDictionaryOneToOne 類別為管理 C# 中的雙向 1:1 關係提供了強大且高效的解決方案。 其清晰的錯誤處理和全面的功能使其非常適合需要獨特的鍵值對以及兩側高效查找功能的各種資料管理場景。

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

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