IEqualityComparer.GetHashCode メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > IEqualityComparer.GetHashCode メソッドの意味・解説 

IEqualityComparer.GetHashCode メソッド

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

指定したオブジェクトハッシュ コード返します

名前空間: System.Collections.Generic
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Function GetHashCode ( _
    obj As T _
) As Integer
Dim instance As IEqualityComparer(Of
 T)
Dim obj As T
Dim returnValue As Integer

returnValue = instance.GetHashCode(obj)
int GetHashCode (
    T obj
)
int GetHashCode (
    T obj
)
int GetHashCode (
    T obj
)
function GetHashCode (
    obj : T
) : int

パラメータ

obj

ハッシュ コード返される対象Object

戻り値
指定したオブジェクトハッシュ コード

例外例外
例外種類条件

ArgumentNullException

obj の型が参照型で、objnull 参照 (Visual Basic では Nothing) です。

解説解説

Equals メソッドによる等値比較カスタマイズ対応しT 型のハッシュ コードカスタマイズするには、このメソッド実装します

実装時の注意 Equals メソッドxy2 つオブジェクトに対して true返す場合には、必ず、GetHashCode メソッドから返される x の値と y の値が等しくなるように実装する必要があります

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
IEqualityComparer ジェネリック インターフェイス
IEqualityComparer メンバ
System.Collections.Generic 名前空間
Object.GetHashCode
IHashCodeProvider インターフェイス

IEqualityComparer.GetHashCode メソッド

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

指定したオブジェクトハッシュ コード返します

名前空間: System.Collections
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

例外例外
例外種類条件

ArgumentNullException

obj の型が参照型で、objnull 参照 (Visual Basic では Nothing) です。

解説解説
使用例使用例

大文字と小文字区別しない IEqualityComparer の実装方法次のコード例示します。この例では、GetHashCode メソッドObject 型によって得られるハッシュ コード返します

Public Class myCultureComparer
    Implements IEqualityComparer

    Dim myComparer As CaseInsensitiveComparer

    Public Sub New()
        myComparer = CaseInsensitiveComparer.DefaultInvariant
    End Sub

    Public Sub New(ByVal
 myCulture As CultureInfo)
        myComparer = New CaseInsensitiveComparer(myCulture)
    End Sub

    Public Function Equals1(ByVal
 x As Object, ByVal y As
 Object) _
        As Boolean Implements
 IEqualityComparer.Equals

        If (myComparer.Compare(x, y) = 0) Then
            Return True
        Else
            Return False
        End If
    End Function

    Public Function GetHashCode1(ByVal
 obj As Object) _
        As Integer Implements
 IEqualityComparer.GetHashCode
        Return obj.ToString().ToLower().GetHashCode()
    End Function
End Class
class myCultureComparer : IEqualityComparer
{
    public CaseInsensitiveComparer myComparer;

    public myCultureComparer()
    {
        myComparer = CaseInsensitiveComparer.DefaultInvariant;
    }

    public myCultureComparer(CultureInfo myCulture)
    {
        myComparer = new CaseInsensitiveComparer(myCulture);
    }

    public new bool Equals(object
 x, object y)
    {
        if (myComparer.Compare(x, y) == 0)
        {
            return true;
        }
        else
        {
            return false;
        }
    }

    public int GetHashCode(object obj)
    {
        return obj.ToString().ToLower().GetHashCode();
    }
}
ref class myCultureComparer : IEqualityComparer
{
private:
    CaseInsensitiveComparer^ myComparer;

public:
    myCultureComparer()
    {
        myComparer = CaseInsensitiveComparer::DefaultInvariant;
    }

    myCultureComparer(CultureInfo^ myCulture)
    {
        myComparer = gcnew CaseInsensitiveComparer(myCulture);
    }

    virtual bool Equals(Object^ x, Object^ y) 
    {
        if (myComparer->Compare(x, y) == 0)
        {
            return true;
        }
        else
        {
            return false;
        }
    }

    virtual int GetHashCode(Object^ obj)
    {
        return obj->ToString()->ToLower()->GetHashCode();
    }
};
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
IEqualityComparer インターフェイス
IEqualityComparer メンバ
System.Collections 名前空間
Object.GetHashCode
System.Collections.IHashCodeProvider



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「IEqualityComparer.GetHashCode メソッド」の関連用語

IEqualityComparer.GetHashCode メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



IEqualityComparer.GetHashCode メソッドのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS