IEqualityComparer インターフェイスとは? わかりやすく解説

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

IEqualityComparer インターフェイス

メモ : このインターフェイスは、.NET Framework version 2.0新しく追加されたものです。

オブジェクト等しかどうか比較サポートするメソッド定義します

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

<ComVisibleAttribute(True)> _
Public Interface IEqualityComparer
Dim instance As IEqualityComparer
[ComVisibleAttribute(true)] 
public interface IEqualityComparer
[ComVisibleAttribute(true)] 
public interface class IEqualityComparer
/** @attribute ComVisibleAttribute(true) */ 
public interface IEqualityComparer
ComVisibleAttribute(true) 
public interface IEqualityComparer
解説解説
使用例使用例

大文字と小文字区別しない IEqualityComparer実装方法次のコード例示します。この例では、指定された CultureInfo に基づき、CaseInsensitiveComparer.Compare メソッド使用して2 つオブジェクト等しかどうか判断してます。

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 メンバ
System.Collections 名前空間
Hashtable クラス
NameValueCollection
OrderedDictionary
IComparer インターフェイス



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

辞書ショートカット

すべての辞書の索引

「IEqualityComparer インターフェイス」の関連用語

IEqualityComparer インターフェイスのお隣キーワード
検索ランキング

   

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



IEqualityComparer インターフェイスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

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

©2025 GRAS Group, Inc.RSS