【发布时间】:2016-10-23 11:54:35
【问题描述】:
我目前正在为我的哈希表研究这种方法,目前看起来是这样。
public void remove(String key) throws MapException {
// TODO Auto-generated method stub
for(int i = 0; i <List.length;i++){
if(List[i] !=null && List[i].equals(key)){
List[i] = null;
numberOfElements--;
}else{
throw new MapException("Nothing here", null);
}
}
}
我的问题是,当我删除 throw new MapException 时,它可以从哈希表中删除实际条目,但是当它在那里时,它会抛出异常但不会删除实际条目?
【问题讨论】:
-
单步调试您的代码。如果
i = 0会发生什么?if是真的吗?我打赌不会。 -
提示:处理代码的格式...仅凭您的 else“位于”左侧太远这一事实就很难理解您的代码...