単語のファイルをスキャンし、使用して内蔵のAPIからHashSetのクラス、私のワードカウントは、(することになっているものである)349を返すとき...私のアドオンは、()のロジックが故障しているようだ
私の自家製HashSetのクラスを使用して、私は235を取得...ので、何かが私のアドオンで()メソッドは、間違っている必要がありますが、私はそれが何であるかを理解することはできません。
ありがとうございました!
public class HashWordSet implements WordSet {
private int size = 0;
private Node[] buckets = new Node[8];
public Iterator<Word> iterator() {
return new WordIterator();
}
//Add word if not already added
public void add(Word word) {
int key = getBucketNumber(word);
Node node = buckets[key];
while (node != null) {
if (node.value.equals(word))
return;
else
node = node.next;
}
node = new Node(word);
buckets[key] = node;
size++;
if (size == buckets.length) rehash();
}
private int getBucketNumber(Word word) {
int hc = word.hashCode();
if (hc < 0) hc = -hc;
return hc % buckets.length;
}
:ような何かを試してみてください!それはまさにそれでした! – Wangagat
確かなことです。それは素晴らしい気晴らしだった:) – digitaljoel