Java の Long 型のハッシュコードの実装を探る

JavaBeginner
オンラインで実践に進む

はじめに

Java では、hashCode() メソッドを使ってオブジェクトの数値表現(ハッシュ値)を計算します。Long クラスの場合、hashCode() メソッドはオブジェクトのハッシュコード値を返します。この実験では、Java の Long クラスの hashCode() メソッドをどのように使うか学びます。

Java ファイルの作成

この手順では、プロジェクト ディレクトリに新しいファイルを作成し、それを LongHashCode.java と名付けます。

cd ~/project
touch LongHashCode.java

必要なパッケージのインポート

この手順では、Long クラスを含む必要な Java パッケージ java.lang をインポートします。

import java.lang.*;

hashCode() メソッドの使用

この手順では、Long クラスのオブジェクトを作成し、そのオブジェクトのハッシュコードを取得するために hashCode() メソッドを使用します。

Long number = 100L;
int hash = number.hashCode();
System.out.println("Hash code: " + hash);

ここでは、まず値が 100LLong クラスのオブジェクト number を作成します。次に、このオブジェクトのハッシュ値を計算するために hashCode() メソッドを使用します。最後に、計算されたハッシュ値を出力します。

ユーザー入力の作成

この手順では、ユーザーから Long 値を取得するユーザー入力を作成し、その後 hashCode() メソッドを使用してそのハッシュ値を計算します。

Scanner scanner = new Scanner(System.in);
System.out.print("Enter a Long value: ");
Long userInput = scanner.nextLong();
int hash = userInput.hashCode();
System.out.println("Hash code: " + hash);

ここでは、ユーザーからの入力を受け取るために Scanner オブジェクトを作成しました。次に、ユーザーに Long 値を入力するよう促します。ユーザーが値を入力すると、それを userInput 変数に格納します。その後、このオブジェクトのハッシュ値を計算するために hashCode() メソッドを使用します。最後に、計算されたハッシュ値を出力します。

負の値でのテスト

この手順では、負の値を使ってプログラムをテストします。

Long number = -100L;
int hash = number.hashCode();
System.out.println("Hash code: " + hash);

ゼロ値でのテスト

この手順では、ゼロ値を使ってプログラムをテストします。

Long number = 0L;
int hash = number.hashCode();
System.out.println("Hash code: " + hash);

プログラムのコンパイルと実行

この手順では、次のコマンドを使って Java プログラムをコンパイルします。

javac LongHashCode.java

次に、次のコマンドを使ってプログラムを実行できます。

java LongHashCode

プログラムを実行すると、Long 値を入力するよう促されます。値を入力すると、入力された値のハッシュ値が計算されて表示されます。

プログラム出力

プログラムの出力は入力値によって異なります。ここに値 123456789L の出力例を示します。

Enter a Long value: 123456789
Hash code: 123456789

まとめ

この実験では、Java のLongクラスのhashCode()メソッドを使ってオブジェクトのハッシュ値を計算する方法を学びました。また、ユーザー入力を受け取り、Java プログラムをコンパイルして実行する方法も学びました。