2017-02-27 10 views
0
for (String item : someList) { 
    System.out.println(item); 
} 

「do while」を使用した場合と同じように表示されますか?Javaでの変換先の変換先

ありがとうございます。

+6

http://docs.oracle.com/javase/specs/jls/se8/html/jls-14.html#jls-14.14.2 –

+1

を読むことから始めます。Iterator(someList.iterator(someList.iterator ))、iterator.hasNext()メソッドを使ってiterateが必要かどうかチェックしてください。 – Xry

答えて

2
List<String> someList = new ArrayList<>(); 
//put some values 
for (String item : someList) { 
    System.out.println(item); 
} 

前のコードと同等です:

int i = 0; 
do { 
    System.out.println(someList.get(i)); 
    i++; 
} while (i < someList.size()); 

EDIT

それとも@BathshebaのようなあなたがそうのようなhasNext()を使用することができますコメントで言及:

//convert your List to Iterator 
Iterator<String> itr = someList.iterator(); 

それから、ループのようにあなたのitrをスローすることができますO:

do { 
    System.out.println(itr.next()); 
} while (itr.hasNext()); 

あなたのリストまたはITRは、あなたのループは彼の答えに@cybi言及のようにあなたのリストを投げる前にチェックするためにあなたがすべき空にすることができますかどうかわからない場合は。

if(!list.isEmpty()){ 
    //loop throw your list or iterator 
} 

幸運。

+1

リンクされたリストでは、O(N * N)アルゴリズムを作成したばかりです。実際の同等のものは 'hasNext()'&cを使います。イテレータで – Bathsheba

+1

今すぐチェック@Bathshebaそれはあなたが意味するものですか? –

3

リストが空の場合、forループは出力を作成しません。やる前にループは、あなたがNoSuchElementExceptionを取得しながら、空のリストをチェックしていない場合は

if (!someList.isEmpty()) { 
     Iterator<String> iterator = someList.iterator(); 
     do { 
      System.out.println(iterator.next()); 
     } while (iterator.hasNext()); 
    } 

:ループのようなものである一方、そうと同等で行います。

+1

私はあなたが受け入れられた答えを得ることを望んだ、私はあなたがチェックできる私の答えであなたの名前を言及していただきありがとうございます、情報ありがとうございます –

+2

少なくとも私たちは今すぐ最高の答えを持っています。ご指摘いただきありがとうございます。 :-) 私は空でないことのチェックは同等のループでは必須と思う。 – cybi

関連する問題