用 C# 建立雙向 1:1 字典
本文解決了在 C# 中創建雙向、一對一字典的挑戰。 要求是字典,其中每個鍵都有唯一的值,反之亦然,允許從鍵和值進行查找。
解決方案:自訂雙向字典實作
自訂 BiDictionaryOneToOne<TFirst, TSecond>
類別是最有效的解決方案,而不是依賴標準 C# 字典。此類別使用兩個內部字典:一個將 TFirst
對應到 TSecond
,另一個將 TSecond
對應到 TFirst
。這種雙重映射確保了唯一性和雙向存取。
BiDictionaryOneToOne
類別包含多種有效資料管理的方法:
Add
、GetByFirst
、GetBySecond
、RemoveByFirst
和 RemoveBySecond
如果找不到指定的鍵或值,則會拋出異常。 這提供了清晰的錯誤處理。 TryAdd
、TryGetByFirst
、TryGetBySecond
、TryRemoveByFirst
和TryRemoveBySecond
成功時回傳true
,否則回傳false
,避免異常更靈活的錯誤處理。 Count
傳回鍵值對的數量,Clear
刪除所有項目。 這個自訂 BiDictionaryOneToOne
類別為管理 C# 中的雙向 1:1 關係提供了強大且高效的解決方案。 其清晰的錯誤處理和全面的功能使其非常適合需要獨特的鍵值對以及兩側高效查找功能的各種資料管理場景。
以上是如何用C#實作雙向一對一字典?的詳細內容。更多資訊請關注PHP中文網其他相關文章!