【发布时间】:2011-03-20 19:17:49
【问题描述】:
您好,这是我插入项目的代码...我被告知在列表开头插入时失败,但不明白为什么或如何修复它。
public void put(K key, V value){
OrderedLinkedListEntry <K,V> item = new OrderedLinkedListEntry (key, value);
OrderedLinkedListEntry <K,V> current = head;
OrderedLinkedListEntry <K,V> previous = null;
if(current == null){
head = item;
numItems ++;
return;
}
while(current != null){
int result = key.compareTo(current.getKey());
if(result == 0){
current.setValue(value);
return;
}else if (result < 0){
item.setNext(current);
if (previous != null){
previous.setNext(item);
}
numItems ++;
return;
}
previous = current;
current = current.getNext();
}
【问题讨论】:
-
previous在要插入的键小于头项中的键时为空。
标签: java collections linked-list adt insertion