我有一个使用节点数组实现的哈希表,其中节点包含一个字符串和一个布尔值,用于检查之前是否有字符串,以便在删除元素后搜索元素。我在一个我无法理解的地方得到了一个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;
}
}
我不明白如何在我正在检查字符串是否为空的地方获取空指针。
答案 0 :(得分:0)
为什么不
public String getElement(int index){
if (index != lastProbed)
probeCount++;
lastProbed = index;
if (table[index] != null) {
return table[index].str;
}
return null;
}