Iteratorを使ってJavaのfor文を回して値を取得する使い方について、サンプルコードとともに掲載しています。
JavaでIteratorとfor文を用いて値を取得する方法は
以下の通りです。
以下はListを使った場合の例です。
import java.util.ArrayList; import java.util.Iterator; import java.util.List; List<String> list = new ArrayList<String>(); list.add("one"); list.add("two"); list.add("three"); for(Iterator<String> ite = list.iterator(); ite.hasNext();) { System.out.println(ite.next()); }
ListからIteratorを生成するのではなく
他クラスのメソッドから取得する場合は以下のようになります。
ほぼ同じような使い方ですが、念のため。
以下はSampleクラスのgetIteratorString()というメソッドを呼び出して
Iterator<String>オブジェクトを取得する場合の処理となります。
import java.util.Iterator; for(Iterator<String> ite = Sample.getIteratorString(); ite.hasNext();) { System.out.println(ite.next()); }
上記のどちらかの使い方になるかな、と思いますが
これで、どちらでもIteratorをfor文で使うことができます。
欠点を書くと、何番目に該当するのか、通常であればfor文にはループカウンタ※が存在するのですが
それを端的に使えない、という点ですかね。
特にループカウンタを使わない場合は、Iteratorの方がパフォーマンスが良いですし、おすすめです。
※for(int i=0; i<=10; i++)としたときのiに該当します
Javaトップへ