本帖最后由 hi潘 于 2015-6-18 17:27 编辑
Entry是Map接口里面的一个内部接口.
该接口用于封装key- value,有3个方法:
Object getKey();返回Entry里包含的key值
Object getValue();返回Entry里包含的value值
Object setValue(Object value):设置Entry里包含的value值,并返回新设置的value值;
Map集合的输出
按照最正统的做法,所有的Map集合的内容都要依靠Iterator输出,以上虽然是完成了输出,但是完成的不标准,Map集合本身并不能直接为Iterator实例化,如果此时非要使用Iterator输出Map集合中内容的话,则要采用如下的步骤:
方法一:
1.通过entrySet方法变成Set对象
2.调用Set的Iterator方法,此时每个Iterator对象是Map.Entry对象
3.对Map.Entry分离出 key - value
方法二:
1.通过keySet得到Map集合多有key的Set集合
2.调用Set的Iterator方法,此时每个Iterator对象是key值
3.通过Map的getValue(key)得到value值
- package july7;
- //把Map中的元素取出来
- import java.util.HashMap;
- import java.util.Iterator;
- import java.util.Map;
- import java.util.Map.Entry;
- import java.util.Set;
- public class Demo18 {
- public static void main(String[] args) {
-
- Map<Integer, String> m = new HashMap<Integer, String>();
-
- m.put(1, "jack");
- m.put(2, "rose");
- m.put(3, "lucy");
-
- //第一种方法
- Set s = m.entrySet();
- Iterator it = s.iterator();
- while(it.hasNext()){
- Map.Entry me = (Entry) it.next();
- System.out.println(me.getKey()+" "+me.getValue());
- }
- //第二种方法
-
- s = m.keySet();//得到的是key的集合
- it = s.iterator();//然后将key迭代出来
- while(it.hasNext()){
- int i = (int)it.next();
- System.out.println(i+" "+m.get(i));
- }
- }
- }
复制代码
|
|