Java学习笔记foreach语句(高级for)

Posted Newbie蔡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java学习笔记foreach语句(高级for)相关的知识,希望对你有一定的参考价值。

 1 package p2;
 2 
 3 import java.util.ArrayList;
 4 import java.util.HashMap;
 5 import java.util.List;
 6 import java.util.Map;
 7 
 8 public class ForEachDemo {
 9 
10     public static void main(String[] args) {
11         /*
12          * foreach语句:
13          * 格式:
14          * for(类型    变量 : Collection  集合|数组)
15          * {
16          *         
17          * }
18          * 
19          * 传统for 和 高级for的区别?
20          * 传统for可以完成对语句执行很多次,因为可以定义控制循环的增量和条件。
21          * 高级for是一种简化形式。它必须有被遍历的目标。该目标要么是数组,要么是Collection单列集合
22          * 
23          * 对数组的遍历如果仅仅是获取数组中的元素,可以使用高级for
24          * 如果要对数组的角标进行操作,建议使用传统for。
25          */
26         
27         List<String> list = new ArrayList<String>();
28         list.add("abc1");
29         list.add("abc2");
30         list.add("abc3");
31         
32         for (String s : list)
33         {
34             System.out.println(s);
35         }
36         
37         
38         int[] arr = {3,1,5,7,4};
39         for (int i: arr)
40         {
41             System.out.println(i);
42         }
43         
44         
45         /*
46          * 可以使用高级for遍历map集合吗?不能直接用,但是可以将map转成单列的set,就可以用了
47          */
48         
49         Map<Integer,String> map = new HashMap<Integer,String>();
50         map.put(3, "zahngsan");
51         map.put(23, "zahngsan");
52         map.put(34, "zahngsan");
53         map.put(1, "zahngsan");
54         
55         for (Integer key : map.keySet())
56         {
57             String value = map.get(key);
58             System.out.println(key+"::"+value);
59         }
60         
61         for (Map.Entry<Integer, String>  me : map.entrySet() )
62         {
63             Integer key = me.getKey();
64             String value = me.getValue();
65             System.out.println(key+"::"+value);
66         }
67 
68     }
69 
70 }

 

以上是关于Java学习笔记foreach语句(高级for)的主要内容,如果未能解决你的问题,请参考以下文章

Java8 学习笔记 - List.forEach() 和 for(item : list) 的区别

c#语言中,foreach循环语句,循环走到最后一层的条件怎么写?

java二维数组foreach语句问题 for(int x:a) if(x==a.length) //不是很明白

FPGA学习笔记03-VHDL语法基础-信号代入语句

java中for each的用法

python学习笔记——for...in &while