“Foreach(增强for)”的版本间差异
		
		
		
		
		
		跳到导航
		跳到搜索
		
				
		
		
	
| 小 (Eijux移动页面Java中的增强for(foreach)至Java中的foreach(增强for),不留重定向) | 无编辑摘要 | ||
| 第1行: | 第1行: | ||
| [[category:Java]] | [[category:Java]] | ||
| == 关于 == | == 关于 foreach == | ||
| For- | For-Each 循环也叫增强型的 for 循环,或者叫 foreach 循环,是 JDK5.0 的新特性(其他新特性比如泛型、自动装箱等),For-Each 循环的加入简化了集合的遍历。 | ||
| * '''foreach 可以与任何实现了 Iterable 接口的对象一起工作''' | * '''foreach 可以与任何实现了 Iterable 接口的对象一起工作''' | ||
| == 语法 == | === 语法 === | ||
| <syntaxhighlight lang="java"> | <syntaxhighlight lang="java"> | ||
| for(type element: array) | for(type element: array) | ||
| 第14行: | 第13行: | ||
| </syntaxhighlight> | </syntaxhighlight> | ||
| == 使用 == | === 使用 === | ||
| <syntaxhighlight lang="java"> | <syntaxhighlight lang="java"> | ||
| public class ForeachTest | public class ForeachTest | ||
| 第48行: | 第46行: | ||
| </syntaxhighlight> | </syntaxhighlight> | ||
| ==  | == for 与 foreach == | ||
| == 集合的三种遍历方式 == | |||
| 集合遍历的三种方式: | 集合遍历的三种方式: | ||
| # 普通for | # 普通for | ||
2022年4月23日 (六) 17:00的版本
关于 foreach
For-Each 循环也叫增强型的 for 循环,或者叫 foreach 循环,是 JDK5.0 的新特性(其他新特性比如泛型、自动装箱等),For-Each 循环的加入简化了集合的遍历。
- foreach 可以与任何实现了 Iterable 接口的对象一起工作
语法
for(type element: array)
{
   System.out.println(element);
}
使用
public class ForeachTest
{
    public static void main(String[] args)
    {
        int[] arr = {1, 2, 3, 4, 5};
        
        System.out.println("----------普通for遍历------------");
        for(int i=0; i<arr.length; i++)
        {
            System.out.println(arr[i]);
        }
        
        System.out.println("---------增强for遍历-------------");
        for(int element:arr)
        {
            System.out.println(element);
        }
        
        System.out.println("---------二维数组遍历-------------");
        int[][] arr2 = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}} ;
        for(int[] row : arr2)
        {
            for(int element : row)
            {
                System.out.println(element);
            }
        }
    }
}
for 与 foreach
集合的三种遍历方式
集合遍历的三种方式:
- 普通for
- 增强型for
- Iterator
public class ForeachTest
{
    public static void main(String[] args)
    { 
        //以三种方式遍历集合List
        List<String> list = new ArrayList<String>();
        list.add("a");
        list.add("b");
        list.add("c");
        
        System.out.println("----------普通for-----------");
        for(int i = 0; i < list.size(); i++)
        {
            System.out.println(list.get(i));
            
        }
		
        System.out.println("----------增强型for(实现了Iterable)-----------");
        for(String str: list)
        {
            System.out.println(str);
        }
        
        System.out.println("----------Iterator-----------");
        for(Iterator<String> iter = list.iterator(); iter.hasNext();)
        {
            System.out.println(iter.next());
        }
    }
}