Map遍历获取所有key/value,排序最小demo整理

Map类提供了一个称为entrySet()的方法,这个方法返回一个Map.Entry实例化后的对象集。

接着,Map.Entry类提供了一个getKey()方法和一个getValue()方法,Map.Entry同时也提供了一个setValue()方法,

程序员可以使用它修改map里面的值。

//通过map.entrySet()方法
//循环map里面的每一对键值对,然后获取key和value
Map<String, String> map = new HashMap();

for (Map.Entry entry : map.entrySet()) {

    Object key = entry.getKey( );
// TODO

}
//使用迭代器,获取key;
Map hashmap = new HashMap();

Set set = hashmap.entrySet();

Iterator iterator = set.iterator();

while (iterator.hasNext()) {

    Map.Entry mapentry = (Map.Entry) iterator.next();

// TODO
    System.out.println(mapentry.getKey() + "/" + mapentry.getValue());

}
//通过map.keySet()方法
//通过得到key的值,然后获取value;
Map<String, String> map = new HashMap();

Set keys = map.keySet( );

if(keys != null) {

    Iterator iterator = keys.iterator( );

    while(iterator.hasNext( )) {

        Object key = iterator.next( );

// TODO
        Object value = map.get(key);

    }

}
//将map<String,String> 转化为ArryList,但list里面的元素为Entry<String,String>
Map<String, String> map = new HashMap();
List<Entry<String,String>> list = new ArrayList<Map.Entry<String,String>>(map.entrySet());
Collections.sort(list,new Comparator<Entry<String,String>>(){
    @Override
    public int compare(Entry<String, String> o1,
                       Entry<String, String> o2) {
        int flag = o1.getValue().compareTo(o2.getValue());
        if(flag==0){
            return o1.getKey().compareTo(o2.getKey());
        }
        return flag;
    }
});

参考地址:https://blog.csdn.net/huangbiao86/article/details/7015060

https://blog.csdn.net/fishroad/article/details/47421457

发布了65 篇原创文章 · 获赞 8 · 访问量 16万+

猜你喜欢

转载自blog.csdn.net/u012382791/article/details/100521908
今日推荐