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