2017-02-10 3 views
0

LinkedList内のすべての要素を表示する方法を見つけようとしています。私は、すべての要素のインデックスを追跡するarraylistを持つことでこれを解決することができましたが、私はarraylistや配列を使用せずにこれを解決したいと考えています。 ListIteratorを使用しないLinkedList内のすべての要素を表示

public void displayItems() 
    { 
     ArrayList<Node> links = new ArrayList<Node>(); 
     links.add(head); 
     for (int x = 0; x < count; x++) 
     { 
      links.add(links.get(x).getLink()); 
      System.out.println(links.get(x).getData()); 
     } 

は上が、配列や反復子を必要とせずに述べたと同様の方法で、すべての要素を表示する方法があり、私が現在持っているものでしょうか?

+0

'thisNode.getLink()!= null'という条件を持つ' while'ループはどうでしょうか? – Kayaman

答えて

1

どのように(あなたが好きではないものを含め - イテレータを使用して)JavaでのLinkedListをループにいくつかの例:リンクされたリストにデータを挿入しているときには、グローバル変数として整数を使用することができます

LinkedList<Node> links = new LinkedList<Node>(); 
links.add(firstNode); 
links.add(secondNode); 
links.add(thirdNode); 

/* For loop */ 
for(int i = 0; i < links.size(); i++) { 
    System.out.println(links.get(i).getLink()); 
} 

/* For-each loop */ 
for(Node node: links) { 
    System.out.println(node.getLink()); 
} 

/* While Loop*/ 
int i = 0; 
while (links.size() > i) { 
    System.out.println(links.get(i++).getLink()); 
} 

/* Iterator */ 
Iterator<Node> it = links.iterator(); 
while (it.hasNext()) { 
    System.out.println(it.next().getLink()); 
} 
+0

上記の例では、 'links'の配列の使用が必要ですが、配列を使用せずにそれを行う方法を見つけようとしています。 –

+0

いいえ、配列を使う必要はありません。上記の例では、変数 'links'はLinkedListです。 – Vaidas

+0

"LinkedListではありません links =新しいLinkedList ();" arraylistを宣言する声明? –

-1

この変数を増分します。

パラメータの位置を指定してLinkedListクラスにメソッドを記述します。ここまでループして位置を取得し、データを取得して同じものを返します。

関連する問題