增强for循环

import java.util.*;
import java.util.Map.Entry;


/**
 * 增强for循环
 * 
 * @author zyen
 *
 */
public class Demo1 {

	/**
	 * 增强for循环
	 */
	public static void main(String[] args) {
		//案例一
		int arr[] = {1,2,3};
		for(int num:arr){
			System.out.println(num);
		}
		
		//案例二
		String arr1[] = {"111","222","333"};
		for(String num:arr1){
			System.out.println(num);
		}
		
		
		//案例三
		List list =new ArrayList();
		list.add("name");
		list.add("ddd");
		list.add("..ddas...");
		
		for(Object obj:list){
			String s=(String) obj;
			System.out.println(s);
		}
		
		//案例四
		Map map=new LinkedHashMap();//LinkedHaspMap存的时候是,线性链表,有顺序
		//Map map=new HashMap();//HashMap是通过hash算法存的
		map.put("a", "111");
		map.put("b", "222");
		map.put("c", "33333");
		
		//传统方式一
		Set set=map.keySet();
		Iterator it= set.iterator();//迭代
		while(it.hasNext()){
			String key= (String) it.next();//获取关键字
			String value=(String) map.get(key);
			
			System.out.println(key +"= "+value);
			
		}
		
		//传统方式二
		Set set1=map.entrySet();
		Iterator it1=set1.iterator();
		while(it1.hasNext()){
			Map.Entry entry=(Entry) it1.next();
			String key=(String) entry.getKey();
			String value=(String) entry.getValue();
			
			System.out.println(key +"= "+value);
		}
		
		//增强for,方式一
		for(Object obj:map.keySet()){
			String key=(String) obj;
			String value=(String) map.get(key);
			
			System.out.println(key +"= "+value);
		}
		
		//增强for,方式二
		for(Object obj:map.entrySet()){
			Map.Entry entry=(Entry) obj;
			String key=(String) entry.getKey();
			String value=(String) entry.getValue();
			
			System.out.println(key +"= "+value);
		}
		
	}
	
	public void test(){
		/**
		 * 增强for需要注意的问题
		 */
		
		//1、增强for适合取数据
		int arr[]={1,2,3};
		for(int num: arr){
			num = 10;
		}
		System.out.println(arr[0]);
		System.out.println(arr[1]);
		System.out.println(arr[2]);
		
		//2、需要修改值,需要使用传统的for循环
		for(int i=0;i < arr.length;i++){
			arr[i] = 10;
		}
		System.out.println(arr[0]);
		System.out.println(arr[1]);
		System.out.println(arr[2]);
	}

}

你可能感兴趣的:(for循环)