Java Hash Table在检查string是否为null时给出NullPointerException

时间:2016-03-11 05:55:56

标签: java nullpointerexception hashtable

我有一个使用节点数组实现的哈希表,其中节点包含一个字符串和一个布尔值,用于检查之前是否有字符串,以便在删除元素后搜索元素。我在一个我无法理解的地方得到了一个nullpointerexception,在这一行:

while(T.getElement(place) != null)

这是我执行抛出异常的循环的代码。

获取元素在这里:

public String getElement(int index){
        if (index != lastProbed)
            probeCount++;
        lastProbed = index;
        return table[index].str;
}

这是我的节点类:

class Node {

boolean hadStr;
String str;


public Node() {
    str = null;
    hadStr = false;
}

}

我不明白如何在我正在检查字符串是否为空的地方获取空指针。

1 个答案:

答案 0 :(得分:0)

为什么不

public String getElement(int index){
        if (index != lastProbed)
            probeCount++;
        lastProbed = index;
        if (table[index] != null) {
           return table[index].str;
        }
        return null;
}