循环双重链接列表toString不起作用

时间:2016-04-06 22:17:49

标签: java tostring doubly-linked-list

我有一个带有帮助方法的toString来打印出我创建的循环链表类的结果。就是这样:

\w*"\b

["]^.*

(.")$

然而,它似乎无法正常工作。我有一个测试用例,它应打印出40,10,2,但它打印出的只有40,10。任何人都可以帮我这个吗?

2 个答案:

答案 0 :(得分:0)

我认为您应该使用stringHelper(node.getNextLink())替换递归调用stringHelper(node),因为您在node.getNextLink()方法中调用了stringHelper()两次,这是不正确的。

答案 1 :(得分:0)

我明白了。很抱歉发布这个,因为我应该自己做。我最终做了:

/**
   * Returns a String version of this.
   *
   * @return  A String description of this.
   */
  public String toString(){
    String string = "";
    DoubleNode<E> current = this.head;
    string += stringHelper(this.head);
    return string;
  }
  //Helps the full to string method
  private String stringHelper(DoubleNode<E> node){
    String string = "";
    if(node == null){
      return string;
    }
    string+= node.getValue();
    string+= ", ";
    node = node.getNextLink();
    if(node == this.head){
      return string;
    }
    else{
      string += node.getValue();
      return (string + ", " + stringHelper(node.getNextLink()));
    }
  }