重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

「Genericsを用いたArrayListを使用しループ処理にはiteratorを使用する。
という指定の下、

ArrayListのインスタンスを生成し次の5つの文字列を追加した後、
for文を使ってリストの中身を全て順番に画面表示したいんです。

"AA"
"BB"
"CC"
"DD"
"EE"
---------------------------
import java.util.ArrayList;
class TestA{
public static void main(String args[]) {
ArrayList<String> array = new ArrayList<String>();
array.add("AA");
array.add("BB");
array.add("CC");
array.add("DD");
array.add("EE");
}
}
---------------------------

ここからよく解らないので教えていただけませんでしょうか?

A 回答 (4件)

package codeget;



import java.util.ArrayList;
import java.util.ListIterator;

class TestA {

public static void main(String args[]) {
ArrayList<String> array = new ArrayList<String>();
array.add("AA");
array.add("BB");
array.add("CC");
array.add("DD");
array.add("EE");

//listIteratorに入れ替えて
ListIterator li = array.listIterator();

while(li.hasNext()){//まだ要素がある場合にtrue
System.out.println(li.next());//nextで次の要素の取り出し
}
}
}な 感じかもしれません。
    • good
    • 0
この回答へのお礼

ありがとうございます。
なんとかできました。

お礼日時:2008/07/29 01:02

何かJDKのバージョンがバラバラですね。

質問者さんがおっしゃっているのは、大文字で始まるインタフェースじゃなくって、末尾に()のあるメソッドの方だと思います。

ちなみに、・・・

JDK 1.2以降→iterator()

JDK 5.0以降[JLS 3.0]→Generics[総称型]、for-each[拡張for文]

です。

java.util
インタフェース List<E>
Iterator<E> iterator()
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/ja …

具体的なJavaコードに関しては、以下のサイト内に「通常のfor文」の場合と、「拡張for文」の場合の2つが載っています。厳密には、全く同じではないらしいですね。(私も今、知った。)

Java言語機能(JDK5.0(Tiger)新機能) 2章 拡張for文
http://www.techscore.com/tech/J2SE/JavaLanguage/ …
    • good
    • 0
この回答へのお礼

ありがとうございます。
ちょっと調べてみます。

お礼日時:2008/07/29 01:00

iteratorを使用しない、全要素の出力



for(int i=0, n=array.size(); i<n; i++) {
System.out.println( array.get(i) );
}



iteratorを使用した、全要素の出力

for(String s : array) {
System.out.println( s );
}



iteratorを使うと、非常にシンプルな文法で全要素にアクセスできます。
    • good
    • 0
この回答へのお礼

2通り記述してくださりありがとうございました。
解りやすいです。

お礼日時:2008/07/29 01:01

こんな感じですかね・・・。



for(Iterator iter = array.iterator() ; iter.hasNext() ; ) {
 System.out.println((String)iter.next());
}
    • good
    • 0
この回答へのお礼

ありがとうございます。できましたー。

お礼日時:2008/07/29 01:02

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!