木を表すいくつかの大きなオブジェクトを比較し、何かをキャッシュして、新しいオブジェクトを既存のオブジェクトと毎回比較することを避けたいと思います...
質問は、何が最高のものでしょうか? (パフォーマンスと衝突の間の妥協...)。
一方では、さまざまなフィールドの値に基づいた通常の hashCode 関数があります ( effective Javaの第 3 章に従っています。しかし、このようなアプローチに伴う潜在的な衝突を評価することはできません。
一方、SHA-1アルゴリズムを使用した標準のJavaディストリビューションからのMessageDigestアプローチがあります。効率的ではないと思いますが、衝突が少ないかもしれません。私は正しいですか?私のコンテキストでは正しい解決策ですか、それとも完全に間違っていますか?
問題は、オブジェクトのサイズがどうなるかわからないということです。また、計算された値は HashTable では使用されないことに注意してください。
どうも...