接口java.util.Map.Entry的使用

Map是java中的接口,Map.Entry是Map的一个内部接口(嵌套接口)。java.util.Map.Entry接口主要就是在遍历map的时候用到。

Map提供了一些常用方法,如keySet()、Values()entrySet()等方法,keySet()方法返回值是Map中key值的集合;Values()方法返回值是Map中Value值的集合;entrySet()的返回值也是返回一个Set集合,此集合的类型为Map.Entry。

Map.Entry是Map声明的一个内部接口,此接口为泛型,定义为Entry<K,V>。它表示Map中的一个实体(一个key-value对)。接口中有getKey(),getValue方法。

package test;
import java.util.*;
import java.util.Map.Entry;
public class B {  
	public static void main(String[] args) {   
		Map<Integer,Integer> mm = new HashMap<Integer,Integer>();   
		for(int i=0;i<10;i++)   {
			mm.put(i, i); 
		}   
		for( Entry<Integer, Integer> e : mm.entrySet()) {
			System.out.println("key:"+e.getKey());
			System.out.println("value:"+e.getValue());   
		}   
		for( Iterator<Entry<Integer, Integer>> i = mm.entrySet().iterator(); i.hasNext(); ){    
			Entry<Integer, Integer> e = i.next();
			System.out.println("key:"+e.getKey());
			System.out.println("value:"+e.getValue());
		}
		
		
		Map map = new HashMap();

        Irerator iterator = map.entrySet().iterator();

        while(iterator.hasNext()) {
            Map.Entry entry = iterator.next();
            Object key = entry.getKey();
        }
        
        Set keySet= map.keySet();

        Irerator iterator = keySet.iterator;

        while(iterator.hasNext()) {
            Object key = iterator.next();
            Object value = map.get(key);
        }
        
        //另外,还有一种遍历方法是,单纯的遍历value值,Map有一个values方法,返回的是value的Collection集合。通过遍历collection也可以遍历value,如
        Collection c = map.values();

        Iterator iterator = c.iterator();

        while(iterator.hasNext()) {
           Object value = iterator.next(); 
        }

    }
}




你可能感兴趣的:(接口java.util.Map.Entry的使用)