For-Each循環(huán)
For-Each循環(huán)也叫增強(qiáng)型的for循環(huán),或者叫foreach循環(huán)。
For-Each循環(huán)是JDK5.0的新特性(其他新特性比如泛型、自動裝箱等)。
For-Each循環(huán)的加入簡化了集合的遍歷。
其語法如下:
1
2
3
4
5
6
7
|
for (type element: array) { System.out.println(element); } |
例子
其基本使用可以直接看代碼:
代碼中首先對比了兩種for循環(huán);之后實(shí)現(xiàn)了用增強(qiáng)for循環(huán)遍歷二維數(shù)組;最后采用三種方式遍歷了一個(gè)List集合。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class ForeachTest { public static void main(String[] args) { int [] arr = { 1 , 2 , 3 , 4 , 5 }; System.out.println( "----------舊方式遍歷------------" ); //舊式方式 for ( int i= 0 ; i<arr.length; i++) { System.out.println(arr[i]); } System.out.println( "---------新方式遍歷-------------" ); //新式寫法,增強(qiáng)的for循環(huán) for ( int element:arr) { System.out.println(element); } System.out.println( "---------遍歷二維數(shù)組-------------" ); //遍歷二維數(shù)組 int [][] arr2 = {{ 1 , 2 , 3 }, { 4 , 5 , 6 }, { 7 , 8 , 9 }} ; for ( int [] row : arr2) { for ( int element : row) { System.out.println(element); } } //以三種方式遍歷集合List List<String> list = new ArrayList<String>(); list.add( "a" ); list.add( "b" ); list.add( "c" ); System.out.println( "----------方式1-----------" ); //第一種方式,普通for循環(huán) for ( int i = 0 ; i < list.size(); i++) { System.out.println(list.get(i)); } System.out.println( "----------方式2-----------" ); //第二種方式,使用迭代器 for (Iterator<String> iter = list.iterator(); iter.hasNext();) { System.out.println(iter.next()); } System.out.println( "----------方式3-----------" ); //第三種方式,使用增強(qiáng)型的for循環(huán) for (String str: list) { System.out.println(str); } } } |
For-Each循環(huán)的缺點(diǎn):丟掉了索引信息。
當(dāng)遍歷集合或數(shù)組時(shí),如果需要訪問集合或數(shù)組的下標(biāo),那么最好使用舊式的方式來實(shí)現(xiàn)循環(huán)或遍歷,而不要使用增強(qiáng)的for循環(huán),因?yàn)樗鼇G失了下標(biāo)信息。
以上就是小編為大家?guī)淼臏\談java 增強(qiáng)型的for循環(huán) for each的全部內(nèi)容了,希望對大家有所幫助,多多支持服務(wù)器之家~