不和lz谈语言,就和lz谈下阅读理解
add(this.next) ; //这个是把自己的后继结点加到自己的位置上
this.next.add(newNode); //这个是把newNode加到自己的后继节点的位置上
你说有啥区别?第一条语句连newNode都没了,你竟然敢说没区别~
add(this.next) ; //这个是把自己的后继结点加到自己的位置上
this.next.add(newNode); //这个是把newNode加到自己的后继节点的位置上
你说有啥区别?第一条语句连newNode都没了,你竟然敢说没区别~
public void add(Node newNode){ // 将节点加入到合适的位置 if(this.next==null){ // 如果下一个节点为空,则把新节点设置在next的位置上 this.next = newNode ; }else{ // 如果不为空,则需要向下继续找next add(this.next) ; //this.next.add(newNode); } } 楼主的add(this.next)始终是在把next节点加在自己的上,并没有去找到一个为空的节点。所以会有错误。