我正在尝试拆分我的双链表。但是我在sublist.head = mid.next上得到了空指针异常。这是否意味着sublist.head指向null?我该如何解决这个问题??
public void splitMid(DoublyLinkedList<T> sublist)
{
Node<T> current;
Node<T> mid;
int i;
if (head == null)
{
sublist.head = null;
sublist.rear = null;
sublist.count = 0;
}
else
if (head.next == null)
{
sublist.head = null;
sublist.rear = null;
sublist.count = 0;
}
else
{
mid = head;
current = head.next;
i = 1;
if (current != null)
current = current.next;
while (current != null)
{
mid = mid.next;
current = current.next;
i++;
if (current != null)
current = current.next;
}
sublist.head = mid.next;
sublist.rear = rear;
rear = mid;
rear.next = null;
sublist.count = count - i;
count = i;
}
}发布于 2016-06-13 15:33:23
如果这条语句:
sublist.head = mid.next;(单独使用)抛出一个NPE,这意味着:
sublist为null.、OR
mid为null或null为
(您可以使用调试器和条件断点,或者通过添加一些临时跟踪打印或断言来确定是哪个断点。)
https://stackoverflow.com/questions/37783963
复制相似问题