你的这种class无法得到头节点的reference,因而无法遍历整个链表,从而delete(int value)无法实现,这种class的思路是仿照c里的实现方法,不太像面向对象的思想
java里好像无需链表,有许多好用的container

解决方案 »

  1.   

    1、需要在类中设置一个变量时刻记录头节点,如Node header;2、Node nReturn=header;
    if(header!=null)
    {
       if(header.getData()==value)
       {
          nReturn=header.next();
          header=null;
          return nReturn;
       }
       else
       {
          Node preNode=header;
          Node nowNode=header.next();
          while(nowNode!=null)
          { 
             if(nowNode.getValue()==value)
             {
                preNode.setNext(nowNode.getNext());
                nowNode==null;
                return nReturn;
             }
             else
             {
                preNode=nowNode;
                nowNode=nowNode.getNext();
             }
          }
       }
    }
    return nReturn;