1、for()循环方法
for()循环方法是最容易理解,也是最先接触的一种循环,在实际开发中也用的相当广泛,在数组和集合这一部分通常用作遍历数组或者集合元素,
其格式为:for(循环变量;判断条件;变量累加){
循环体;
}
比如用于遍历元素:for(int x = 0;x < arr.length-1;x++){
System.out,println(arr[x]);
}
但for循环在用于集合的时候,则显得程序不简洁;故而引出了迭代方法:Iterator
2、Iterator迭代器迭代方法
Iterator迭代器对象遍历集合时,内部采用指针的方式来跟踪集合中的元素,通常与next()方法一同使用。
下面通过一个实例来说明其特点和用法
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
49package Iterator; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import java.util.Scanner; /* * Iterator iterator() :集合的迭代器方法(获取集合的迭代器) * *集合的专有遍历方式:迭代器遍历 * * Iterator :接口中有以下的方法: * boolean hasNext() :如果有元素可以迭代(遍历),那么返回true,否则返回false * Object next()返回迭代的下一个元素。 * 存储String类型的元素 * */ public class Iterator_method { public static void main(String[] args) { // 创建集合对象 Collection c = new ArrayList(); // 添加集合元素 c.add("i"); c.add("love"); c.add("a girl"); // 通过集合获取迭代器 Iterator it = c.iterator(); // 判断是否有下一个元素 while (it.hasNext()) { // 以字符串形式输出 String str = (String) (it.next()); // 输出字符串并输出各字符串的长度 System.out.println(str + "---" + str.length()); /* * 输出结果为: i---1 love---4 a girl---6 */
在使用Iterator迭代器对集合中的元素进行遍历时,如果调用集合对象的remove方法删除元素时,会出现异常。
3、foreach循环
虽然Iterator可以用来遍历集合中的元素,但写法繁琐,为简化书写,故在JDK5以后加入了foreach循环。其本质是一种更为简洁的for循环。故可称之为增强for循环。foreach循环主要用于遍历数组或集合中的元素。
其语法格式为:
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
31package foreach; import java.util.ArrayList; /* * 需求:使用foreach循环遍历集合元素 * */ public class foreach { public static void main(String[] args) { //创建ArrayList集合 ArrayList list = new ArrayList(); //给集合添加元素 list.add("hello"); list.add("world"); list.add("java"); list.add("apple"); list.add("shut"); //输出并打印该集合 //遍历该集合元素 for(Object obj :list){ System.out.println(list); } } }
foreach循环的局限性:foreach循环遍历集合和数组时,只能访问集合中的元素,不能对其中的元素进行修改。
最后
以上就是辛勤百褶裙最近收集整理的关于Java语言-22:三种常用的遍历方法及其特点for、Iterator、foreach循环的全部内容,更多相关Java语言-22:三种常用内容请搜索靠谱客的其他文章。
发表评论 取消回复