我试图比较两个UF组件的大小,并且在进行此比较之后我想将对象插入特定位置,如果它是偶数或奇数的话。但是我不能插入任何因为我得到一个空指针异常,我无法理解为什么我不能遍历对象。
DoublyLinkedList<WeightedQuickUnionUF> list = new DoublyLinkedList<WeightedQuickUnionUF>();
ListIterator<WeightedQuickUnionUF> iterator = list.iterator();
public void add(WeightedQuickUnionUF item){
if(component%2==0){
if(list.isEmpty()){
list.add(item);
}
else if(!iterator.hasPrevious()) list.add(item);
else if(iterator.hasPrevious()) {
while(iterator.hasPrevious()){
WeightedQuickUnionUF xf = iterator.previous();
int x = xf.getSize();
System.out.println(x);
if(x<component){
iterator.set(item);
}
}
}
else iterator.set(item);
}
}