現在プロジェクトで作業中ですが、この時点で固まっています。基本的には、タイプを比較する方法を理解しようとしています。タイプとキー:Int。コードから、here.theKeyとtheKey2は型Keyであり、theKey1はkeyを引数として受け取り、hashcodeを取得し、BST内で 'here'という名前の同じハッシュコードを見つけるために使用されます。私が抱えている問題は、this.theKeyの値をintであるtheKey1とどのように比較するのか分かりません。ここでint型の値をJavaの別の型と比較する
がメソッドです:
public Value get(Key key)
{
int theKey1 = hash(key);
TreeNode here = Tree;
while (here != null)
{
int theKey2=here.theKey;
if(theKey1 < theKey2)
{
here = here.left;
}
else if(theKey1>theKey2)
here = here.right;
else
{
return here.value;
}
}
throw new IllegalArgumentException("Value associated with the key not found");
}
私がのcompareToを使用しようとしたが、theKey1がint型であるため、私はエラーを取得しました。どんな助けや指導も大歓迎です。
この行に 'key2 = here.theKey;' int isKey2 = hash(here.theKey); 'を付けてはいけません。 – Mritunjay
'int theKey2 = hash(here.theKey);'、しかし、ハッシュコードで注文されるBSTのポイントはどういう意味ですか? – EJP
このプロジェクトでは、衝突を処理するために連鎖したHashtableと配列の代わりにBSTを使用するプログラムを作成します。 –