package test12;

 import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set; public class Entre_Demo {
public static void main(String ... args){
mapEntre(); }
public static void mapEntre(){
Map<String,Integer> map=new HashMap<>();
map.put("tom",);
map.put("ok",);
Set<Map.Entry<String,Integer>> mapen=map.entrySet();//泛型内嵌套泛型。获得是Set集合。
Iterator<Map.Entry<String,Integer>> mapit=mapen.iterator();
while (mapit.hasNext()){
Map.Entry<String,Integer> mape=mapit.next();
// String mapkey=mapit.next().getKey();
String mapkey=mape.getKey();//获取键值
Integer mapval=mape.getValue();//获得val。
// Integer mapval=mapit.next().getValue();
System.out.print(mapkey+"-------------------"+mapval);
}
}
}

Map的方法中entrySet()返回是Set集合,集合内的对象类型为:Map.Entry<k,v>类型,属于泛型中嵌套另一个类型。

Set<Map.Entry<K,V>>      entrySet()

Interface Map.Entry<K,V> 提供的方法。entrySet()是返回的是这个接口实现类的对象。

看下方法:

K   getKey()

V     getValue()

V     setValue(V value) 设置新的value值。

05-11 02:01