您的位置:首页 > 编程语言 > Java开发

Java基础之高级(增强的)For循环(foreach)

2013-01-28 11:06 344 查看
增强的For循环:

格式:

for(数据类型 变量名 : 被遍历的集合(Collection)或者数组)
{

}

对集合进行遍历:
只能获取元素,但是不能对集合进行操作。

迭代器,除了遍历,还可以进行remove集合中元素的动作。

如果使用 ListIterator 还可以在遍历过程中对集合进行增、删、改、查的动作。

传统的for循化与增强的for循环的区别:

高级for循环有一个局限性,必须有被遍历的目标。

建议在遍历数组时,使用传统 for 循环,因为传统for循环可以定义角标

for(int i = 0;i<arr.length;i++)
{

}

传统遍历与高级遍历的演示:

import java.util.*;

class ForEachDemo
{
public static void main(String[] args)
{
ArrayList<String> al = new ArrayList<String>();

al.add("abc");
al.add("cba");
al.add("bac");
al.add("cab");
al.add("bca");

Iterator<String> it = al.iterator();
while(it.hasNext())
{
System.out.println(it.next());
}

for(Iterator<String> its = al.iterator();its.hasNext();)
{
System.out.println(its.next());
}

//增强的For循环
for(String str : al)
{
System.out.println(str);
}

int[] intArr = {1,2,3,4,5,6};
for(int i : intArr)
{
System.out.println(i);
}

//对HashMap的遍历
HashMap<Integer,String> hm = new HashMap<Integer,String>();

hm.put(0,"aa");
hm.put(1,"bb");
hm.put(2,"cc");

Set<Integer> set = hm.keySet();
for(Integer key : set)
{
System.out.println(key + "==" + hm.get(key));
}

for(Map.Entry<Integer,String> entry : hm.entrySet())
{
System.out.println(entry.getKey() + "==" + entry.getValue());
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐