具有使用者定義鍵和自訂相等性的 Go 映射
使用使用者定義鍵實現 Go 映射需要遵守特定的相等規則。不幸的是,Go 的內建相等操作無法針對映射鍵進行自訂。但是,存在一種有效的解決方法。
不要直接使用結構體實例作為鍵,而是考慮派生一個可以用作內在鍵並與您所需的相等語義保持一致的唯一屬性。例如,您可以派生代表實例身分的整數或字串值。
確保僅當對應值代表真實語意身分時才會發生鍵衝突至關重要。這確保了可互換的值被正確地映射。
例如:
請記住,這種方法需要不可變的鍵。修改上例中的欄位會使金鑰的身份無效,使其不適合作為雜湊密鑰。
以上是如何在 Go Map 中使用使用者定義的結構體作為鍵?的詳細內容。更多資訊請關注PHP中文網其他相關文章!