`

遍历集合

阅读更多
package other;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;

public class Test {
/************************************遍历list************************************************/	
	//foreach遍历list
	public void forEachlist(List<String> list){
		for(String a: list){
			System.out.println("foreach遍历list: " + a);
		}
	}
	//用iterator遍历list
	public void iteratorList(List<String> list){
		Iterator<String> it = list.iterator();
		while(it.hasNext()){
			String a = it.next();
			System.out.println("iterator遍历list: " + a);
		}
	}
	//iterator松耦合,符合抽象编程的原则。foreach也是使用iterator来遍历的 。如果用普通的for来遍历的话,是紧耦合,可以倒着循环
/*************************************遍历MAP*****************************************************/
	
	//通过 entrySet 来遍历Map
	public void entryMap(Map<String,String> hm){
		Iterator it = hm.entrySet().iterator();
		while(it.hasNext()){
			Map.Entry entry = (Entry) it.next();
			System.out.print("KEY: " + entry.getKey() + "  || ");
			System.out.println("VAL: " + entry.getValue());
		}
	}
	//通过 keySet 来遍历Map
	public void keyMap(Map<String,String> hm){
		Iterator it = hm.keySet().iterator();
		while (it.hasNext()) {
			String key = (String)it.next();
			String val = (String)hm.get(key);
			System.out.print("KEY: " + key + "  || ");
			System.out.println("VAL: " + val);
		}
	}
//keySet其实是遍历了2次,一次是转为iterator,一次就从hashmap中取出key所对于的value。而entryset只是遍历了第一次,他把key和value都放到了entry中。
//	 所以使用entryset遍历map效率要高一些。	
	
	public static void main(String[] args) {
		Test test = new Test();
	/*测试遍历list的方法	
		List<String> list = new ArrayList<String>();
		list.add("6");
		list.add("2");
		list.add("3");
		list.add("4");
//		test.forEachlist(list);
		test.iteratorList(list);
	 */
//测试遍历map的方法
		Map<String, String> m = new HashMap<String, String>();
		m.put("1", "1");
		m.put("2", "2");
		m.put("3", "3");
		m.put("4", "4");
		m.put("5", "5");
		m.put("6", "6");
//		test.entryMap(m);
		test.keyMap(m);
		
	}
}


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics