イテレータインスタンスからリストを作成する標準的な方法があれば誰でも知っていますか?リストを作成<T>イテレータからのインスタンス<T>
6
A
答えて
14
私は、一般的に依存関係としてグアバを持って、それが既に存在しているので、私はGuava's Lists.newArrayList(Iterator)
に向かう傾向。
3
Iterator
を使用してすべての要素を取得し、List
に追加します。
List<String> list = new LinkedList<String>();
while(iter.hasNext()) { // iter is of type Iterator<String>
list.add(iter.next());
}
0
は、次のようなものを試してください:注意する
public T List<T> listFromIterator(Iterator<T> iterator) {
List<T> result = new LinkedList<T>();
while(iterator.hasNext()) {
result.add(iterator.next());
}
}
一つはイテレータがあなたの構造の先頭ではない場合、あなたは前の要素を取得する方法がないということです。
イテレータの元になっているコレクションがある場合は、コレクションを取得するコンストラクタを使用してリストを作成できます。例:LinkedList
コンストラクタ:
LinkedList(Collection<? extends E> c)
0
これは私がイテレータやその逆のためにリストから変換する方法です。
ArrayList arrayList = new ArrayList();
// add elements to the array list
arrayList.add("C");
arrayList.add("A");
arrayList.add("E");
arrayList.add("B");
arrayList.add("D");
arrayList.add("F");
// use iterator to display contents of arrayList
System.out.print("Original contents of arrayList: ");
Iterator iterator = arrayList.iterator();
ArrayList arrayList2 = new ArrayList();
while(iterator.hasNext()) {
Object element = iterator.next();
arrayList2.add(element);
System.out.print(element + " ");
}
5
私は、これは私がやったことで、この必要性を持っていた、とApache Commonsののユーザーとして:
IteratorUtils.toList(iterator);
関連する問題
- 1. Kerberos TGTの動作
- 2. struts2イテレータの使い方リスト<String>
- 3. Windows上のKerberos TGTセッションキーがすべて0になる原因
- 4. MIT KerberosがMSLSAキャッシュでTGTの検索に失敗する
- 5. STLリスト<Object>リスト内のオブジェクトを変更するイテレータ
- 6. GSSManager.createCredentialはKerberosキーとTGTをどのように取得しますか?
- 7. クッキーからリスト<>を作成して読む
- 8. ケルベロスチケットのパスTGTとサービスチケットは、Windows XPとunixにありますか?
- 9. リストの作成方法<Float>?
- 10. リスト<int>からIEnumerable <IComparable>
- 11. イテレータ<?>は、java
- 12. SSH /その他のアプリケーション用にJavaで取得したTGTの使用
- 13. Linq - 式<T1>を式<T2>から作成する
- 14. 作成Observable <T>から結果
- 15. SortedList <int, T>からリスト<T>を作成するにはどうすればよいですか?
- 16. <nativehr> 0x80070057</nativehr><nativestack></ nativestack> SharepointリストにChoiceフィールドを作成する場合
- 17. リスト<class>をクラス名で作成できますか?
- 18. C++イテレータと私は(実際に、それは私の現在のオブジェクトの<code>const_iterator</code>であり、私もまた<code>reverse_const_iterator</code>を作成したい<code>iterator</code>を書いてイテレータ
- 19. リストからクラスのインスタンスを作成する(Python 2.7)
- 20. Activator.CreateInstanceを使用してFuncを作成<T>インスタンス
- 21. Dozerマッピングからセット<Object>をリスト<ENUM>
- 22. キー値のペアのリストからオブジェクトを作成しようとすると、どのようなデザインが良いでしょうか?私は、テキストファイルを解析する方法を持っていると<strong>リストを返す</em><strong>リスト</strong><em><strong></em>のキーと値のペアの</strong><em>を</strong>、およびkvpsからオブジェクトを作成する場合
- 23. リスト<String>からArrayList <String>変換の問題
- 24. エラー:</p> <p>プロジェクト(POM)<br> プロジェクトクライアント(モジュール、jarファイル)<br> プロジェクトのejb:作成-からプロジェクト
- 25. リスト(<%の#、<%=、など...)
- 26. 返信リスト<T>のIOCからのインスタンス化されたクラス
- 27. 独自のリストを作成する<string、string、string>
- 28. std :: map <t1, t2> :: erase(イテレータの位置)の作業?
- 29. リスト<?>対リスト<?オブジェクト>
- 30. 意見:操作項目がある売り手のリスト項目</li> <li>インスタンス・レベルのセキュリティ
あなたはイテレータからリストを作成することはできません、あなたがリストを作成することができますそれを要素とするイテレータがあります。 – Sajmon
'Iterator'から' List'を作成することは実際には意味がありません。これは単なるインデックスから配列を作成するようなものです! – adarshr
イテレータに既に 'next()'関数が呼び出されている場合、以前の要素を取得することはできません。 –