1. ホーム
  2. java

[解決済み] java- リストのイテレータをリストの最初の要素にリセットします。

2022-02-10 22:42:59

質問

LinkedListイテレータをその最初の要素に"reset"する方法を知る必要があります。

例えば

LinkedList<String> list;

Iterator iter=list.listIterator;

iter.next();

iter.next();

何度も何度もイテレータを移動させた後、イテレータの位置をリセットする必要があります。 `

イテレータを最初の要素に戻すにはどうしたらいいか教えてください。

この方法で、最初の要素のリスト・イテレータを取得できることは知っています。

iter= list.listIterator(1);

これは最良の解決策ですか?それとも、Oracleのドキュメントで何か見落としているのでしょうか?

どのように解決するのですか?

を使用しないことです。 LinkedList 通常、すべての分野で遅くなり、使い勝手も悪くなります。(主に前面への挿入/削除を行う場合、特に大きな配列の場合はLinkedListの方が速い)

使用方法 ArrayList で反復処理します。

int len = list.size();
for (int i = 0; i < len; i++) {
  Element ele = list.get(i);
}

リセットは簡単で、もう一度ループさせるだけです。
どうしてもイテレータを使いたいなら

iter = list.listIterator();

(私は人生で一度だけLinkedListの利点を見ました:whileループでループして、最初の要素を削除することができました)