これは、すべてのノードを表示する Linked List クラスの一部です。
このメソッドが行おうとしているのは、フロント (はい、head の代わりに front を使用していますが、これは問題ではありませんが、リンク リスト ベースのキューを実装しています) をポインター (この場合は "cur" と呼ばれる) に設定し、 cur の次のノードは null ではありません。そうでない場合は、要素 (株式と価格の 2 つの部分) を取得し、cur を次のノードに設定します。すすぎ、次の cur (ステップインする前) が null になるまで繰り返します。その場合、ループを終了し、最後の cur (null 別名 tail/rear の前) を出力するだけです。すべての要素を s に追加します (連結により)
public Object displayAll() {
Node cur = front;
Object s = null;
while(cur.getNext() != null) {
s += cur.getShare() + " @ " + cur.getPrice();
cur.setNext(cur);
}
s += cur.getShare() + " @ " + cur.getPrice();
return s;
}
出力: 最初の要素を無数に繰り返します。 意図した出力:繰り返しはしたくありませんが、すべてのノードのすべての要素を表示します。
私は何が欠けていますか?任意のポインタをお願いします?