2012-01-06 15 views
0

私はPythonのようなJavaのFOR ... IN ...ループはありますか?

arr = [] 
for e in arr: 
    do smth. with each element 

としてループのためのニシキヘビを使用して配列に繰り返すことができますJavaは同様のループを持っていますか?

temp = str.split(delimiter); 

"for ... in ..."と同様のステートメントでループできる配列はありますか?

+3

試しましたか?おそらく何か助けを読んで?私のお気に入りの検索エンジンで2秒でこれが見つかりました。http://docs.oracle.com/javase/1.5.0/docs/guide/language/foreach.html – ManseUK

+0

http://docs.oracle.com/javase/tutorial/java /nutsandbolts/for.html –

答えて

9

foreach「文」があります:

for (final E element: array) { 
    // do whatever with element 
} 

それは、配列やコレクションのすべての種類だけでなく(セット、リスト、マップ)、そして一般的には任意のクラスのためのX実装で動作しますIterable<X>、つまり、Iterable自身(つまり、foreach文で使用するクラスを書くことができます。いいです)。

だから、あなたは直接書き込むことができます:

.split()として
for (final String s: str.split(delimiter)) { 
    // work with s 
} 

は、foreach文で直接使用可能である配列を返します。つまり、何らかの理由で配列インデックスを保持するために別の変数を必要としない場合です。

+2

+1は「最終」です。 – Thilo

+1

なぜ私はファイナルを使用すべきですか? –

+2

"Should"が強すぎる - しかし、とにかく、ここで、 'final'はあなたが誤ってループ内でsを再利用することを避けます(試してみるとコンパイルエラーになります)。 – fge

2
for (String part: str.split(delimiter)){ 
    // .... 
} 
関連する問題