关于为链表添加构造方法的问题
来源:5-2 测试自己的Leetcode链表代码
the__sky123
2018-07-07
我想要为自己的链表添加一个可以吧数组转化为链表的构造方法,依据老师在本节的部分代码,我做了如下的实现
public Linkedlist(E[] arr) { if(arr == null || arr.length == 0) throw new IllegalArgumentException("arr can not be empty"); dummyHead.next.e = arr[0]; Node cur = dummyHead.next; for(int i = 0 ; i < arr.length ; i ++) { cur.next = new Node(arr[i],cur.next); cur = cur.next; } } debug只会跳 java.lang.NullPointerException 请老师帮忙解答,谢谢
写回答
2回答
-
初始的时候dummyHead.next为空,第6行调用dummyHead.next.e,相当于调用了 空.e,所以报空指针异常:)
再试试看?加油!:)
032018-07-07 -
the__sky123
提问者
2018-07-07
public Linkedlist(E[] arr) { if(arr == null || arr.length == 0) throw new IllegalArgumentException("arr can not be empty"); dummyHead = new Node(null,null); Node prev = dummyHead; for(int i = 0 ; i < arr.length ; i ++) { Node node = new Node(arr[i]); prev.next = node; prev = prev.next; } size = arr.length; }
00
相似问题