1.for each语句是java 5的新特征之一,在遍历集合,数组方面提供了很大的便利。
2.for each语句是for语句的特殊简化版本,但是for each语句并不能完全取代for语句,然而,任何的for each语句都可以改写为for语句版本。
3.for each的语句格式:
for(元素数据类型 元素变量:遍历对象)
{
//循环体内容
}
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
import
java.util.Arrays;
import
java.util.List;
import
java.util.ArrayList;
public
class
TestArray {
public
static
void
main(String args[]) {
TestArray test =
new
TestArray();
test.test1();
test.listToArray();
test.testArray3();
}
/**
* foreach语句输出一维数组
*/
public
void
test1() {
//定义并初始化一个数组
int
arr[] = {
2
,
3
,
1
};
System.out.println(
"----1----排序前的一维数组"
);
for
(
int
x : arr) {
System.out.println(x);
//逐个输出数组元素的值
}
//对数组排序
Arrays.sort(arr);
//利用java新特性for each循环输出数组
System.out.println(
"----1----排序后的一维数组"
);
for
(
int
x : arr) {
System.out.println(x);
//逐个输出数组元素的值
}
}
/**
* 集合转换为一维数组
*/
public
void
listToArray() {
//创建List并添加元素
List<String> list =
new
ArrayList<String>();
list.add(
"1"
);
list.add(
"3"
);
list.add(
"4"
);
//利用froeach语句输出集合元素
System.out.println(
"----2----froeach语句输出集合元素"
);
for
(String x : list) {
System.out.println(x);
}
//将ArrayList转换为数组
Object s[] = list.toArray();
//利用froeach语句输出集合元素
System.out.println(
"----2----froeach语句输出集合转换而来的数组元素"
);
for
(Object x : s) {
System.out.println(x.toString());
//逐个输出数组元素的值
}
}
/**
* foreach输出二维数组测试
*/
public
void
testArray2() {
int
arr2[][] = {{
4
,
3
}, {
1
,
2
}};
System.out.println(
"----3----foreach输出二维数组测试"
);
for
(
int
x[] : arr2) {
for
(
int
e : x) {
System.out.println(e);
//逐个输出数组元素的值
}
}
}
/**
* foreach输出三维数组
*/
public
void
testArray3() {
int
arr[][][] = {
{{
1
,
2
}, {
3
,
4
}},
{{
5
,
6
}, {
7
,
8
}}
};
System.out.println(
"----4----foreach输出三维数组测试"
);
for
(
int
[][] a2 : arr) {
for
(
int
[] a1 : a2) {
for
(
int
x : a1) {
System.out.println(x);
}
}
}
}
}
|