オブジェクトの一貫性の維持とc#
のハッシュ値とハッシュ値 FOOクラスで等しいメソッドを再発見して、FOID属性を比較して、オブジェクトの一貫性を等しく保証します。ただし、GethashCodeメソッドの書き換えは、これら2つの方法のルールに準拠するためにも非常に重要です。
gethashcode
の書き換えの重要性 オブジェクトが辞書やハッシュセットなどのデータ構造のキーとして使用される場合、GethashCodeを使用して、バレルを配置するバレルを配置するバレルを決定します。 2つのオブジェクトのハッシュコード(Equalで定義)を異なると見なす必要がある場合、それらは決して比較されず、平等な性質の誤った評価をもたらすことができます。
この場合、gethashcodeの推奨は次のとおりです。 これは、等しい方法の論理と一致しています。
高度な考慮同じ性質の複数の属性を含むより複雑なオブジェクトについては、最新のフレームワークでハッシュコードタイプを使用するか、カスタムハッシュコード計算を実装してください。
<code class="language-csharp">public override int GetHashCode() => base.GetHashCode();</code>
便利さを追加
利便性のために、実装==を考慮することができます。
これらの原則を観察することにより、平等な性質とハッシュの一貫した動作を確保することができ、それによりアプリケーションの信頼性とパフォーマンスを改善します。以上がC#で一貫したオブジェクトの平等とハッシュを維持する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。