Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
链表java的添加方法_Java_Linked List - Fatal编程技术网

链表java的添加方法

链表java的添加方法,java,linked-list,Java,Linked List,在将节点添加到链接列表时,我猜想法如下: Declare newNode Add to the front if front == null else if there is already a node in the list 然而,这似乎不起作用 public boolean add (E e) { ListNode<E> newNode = new ListNode<E>(e,null); if (front == null){ fron

在将节点添加到链接列表时,我猜想法如下:

Declare newNode 
Add to the front if front == null
else if there is already a node in the list
然而,这似乎不起作用

public boolean add (E e) {

  ListNode<E> newNode = new ListNode<E>(e,null);

  if (front == null){
      front = newNode;
      rear = newNode;
      objectCount++;
      return true;
  }

      front.next = newNode;
      rear.next = newNode;
      rear = newNode;
      objectCount++;
      return true;
}
public boolean add(E){
ListNode newNode=新ListNode(e,null);
if(front==null){
front=newNode;
后=新节点;
objectCount++;
返回true;
}
front.next=newNode;
rear.next=newNode;
后=新节点;
objectCount++;
返回true;
}

但是,当我对列表“a”、“b”、“c”、“d”、“e”运行此函数时,它返回的列表大小不是5,而是2。这里出了什么问题?

您正在前面和后面的节点旁边添加新节点。为了解决这个问题,您应该将它添加到后部节点(假设您的列表只接受后部的新值)


不应修改前节点内的下一个指针。如果存在前端节点,请执行以下步骤:

  • 创建一个新节点
  • 将rear的下一个节点设置为新节点
  • 将后节点设置为新节点
  • 递增计数器

  • 它工作得很好,我理解你是怎么做的,我的错误是什么。回答得好。@nitiger,不客气:)。请不要忘记在你发布问题15分钟后将帖子标记为答案。
    //front.next = newNode;
    rear.next = newNode;
    rear = newNode;
    objectCount++;
    return true;