C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のUInt32.GetHashCode()メソッドをサンプルコードで解説

C#におけるUInt32.GetHashCode()メソッドは、現在のUInt32インスタンスに対応するハッシュコード(HashCode)を取得するために使用されるメソッドです。ハッシュコードは、DictionaryやHashSetなどのハッシュベースのコレクションでオブジェクトを効率的に管理する際に活用されます。

構文

UInt32.GetHashCode()メソッドの構文は以下の通りです。

public override int GetHashCode ();

このメソッドは引数を受け取らず、現在のUInt32値を表すint型のハッシュコードを返します。

例1:基本的な使用方法

まず、UInt32.GetHashCode()メソッドを実装した基本的な例を見てみましょう。

using System;
public class Demo {
   public static void Main(){
      uint val1 = 100;
      uint val2 = UInt16.MinValue;
      Console.WriteLine("HashCode for val1 = "+val1.GetHashCode());
      Console.WriteLine("HashCode for val2 = "+val2.GetHashCode());
   }
}

出力結果

上記のコードを実行すると、以下の出力が得られます。

HashCode for val1 = 100
HashCode for val2 = 0

この例では、val1には100が代入されているため、そのハッシュコードも100になります。一方、val2にはUInt16.MinValue(0)が代入されているため、ハッシュコードは0となります。

例2:最大値を使用した場合

次に、別の値を使ってUInt32.GetHashCode()メソッドの動作を確認してみましょう。

using System;
public class Demo {
   public static void Main(){
      uint val1 = 50;
      uint val2 = UInt16.MaxValue;
      Console.WriteLine("HashCode for val1 = "+val1.GetHashCode());
      Console.WriteLine("HashCode for val2 = "+val2.GetHashCode());
   }
}

出力結果

上記のコードを実行すると、以下の出力が得られます。

HashCode for val1 = 50
HashCode for val2 = 65535

このように、UInt32型のような値型の場合、GetHashCode()メソッドは数値そのものをハッシュコードとして返します。val1には50が、val2にはUInt16.MaxValue(65535)が代入されているため、それぞれ同じ値がハッシュコードとして出力されています。

まとめ

UInt32.GetHashCode()メソッドは、UInt32インスタンスのハッシュコードを簡単に取得できる便利なメソッドです。値型では元の数値と同じ値が返されるため、挙動を理解しやすいのが特徴です。ハッシュベースのコレクションを扱う際の基礎知識として、ぜひ押さえておきましょう。

  1. C#のUInt64.GetHashCode()メソッドとは?構文と使い方をサンプルコード付きで解説

    C#のUInt64.GetHashCode()メソッドは、現在のUInt64(符号なし64ビット整数)インスタンスに対応するハッシュコードを取得するために使用されます。ハッシュコードは、ハッシュテーブルやディクショナリなどのデータ構造において、オブジェクトを効率的に検索・管理するために利用されるint型の数値です。構文UInt64.GetHashCode()メソッドの構文は以下のとおりです。public override int GetHashCode ();このメソッドは引数を受け取らず、呼び出し元のUInt64インスタンスのハッシュコードをint型の値として返します。使用例1:基本的な使い

  2. 【C#入門】UInt16.GetHashCode()メソッドの使い方を実例付きで解説

    C#のUInt16.GetHashCode()メソッドは、現在のUInt16インスタンスに対応するハッシュコード(HashCode)を取得するために使用されます。ハッシュコードは、ハッシュテーブルなどのデータ構造でオブジェクトを効率的に管理・検索する際に活用される整数値です。構文UInt16.GetHashCode()メソッドの構文は以下の通りです。public override int GetHashCode ();このメソッドは引数を受け取らず、現在のインスタンスの値を表すint型のハッシュコードを返します。使用例1まず、基本的な実装例を見てみましょう。通常の値とUInt16.MinVal