本文目录一览:
如何对Map进行字典排序Java
//根据 Map的key进行字典排序
Map<String, String> parameterMap = new HashMap<String, String>();
List<Map.Entry<String,String>> list = new ArrayList<Map.Entry<String,String>>(parameterMap.entrySet());
Collections.sort(list,new Comparator<Map.Entry<String,String>>() {
//升序排序
public int compare(Entry<String, String> o1, Entry<String, String> o2) {
return o1.getKey().compareTo(o2.getKey());
}
});
java map 先后顺序
通过map中的LinkedHashMap实现就可以。
HashMap<String,String> headers = new LinkedHashMap<String,String>();//创建一个map
headers.put("Cache-Control", "no-cache");//给map赋第一个值
headers.put("Connection", "close");//给map赋第二个值
Set keys1 = headers.keySet();//获取所有的key值
System.out.println(keys1);
结果:[Cache-Control,Connection]
;//结果就是先进先出
备注:以上HashMap就是先定义了存放的key和value值都是字符串类型,之后可以通过get方法获取到对应的值(如:headers.get("Cache-Control"),结果就是"no-cache");
Java中 map集合能排序吗?
可以的,Java中的map ,list ,set 三个之间都是可以相互的转换的! 举个例子:map 转换成List 后就可以排序了~
public class test {
public static void main(String[] args) {
Map<String,String> maps = new HashMap<String,String>();
maps.put("1", "one");
maps.put("2", "two");
maps.put("3", "three");
List list = mapTransitionList(maps);
for(int i=0; i<list.size(); i++) {
System.out.println(list.get(i));
}
}
private static List mapTransitionList(Map<String, String> maps) {
List list = new ArrayList();
Iterator iter = maps.entrySet().iterator(); //获得map的Iterator
while(iter.hasNext()) {
java map 怎么按按key排序
java中map按照double大小进行排序,可以使用collentions接口的sort方法进行比较,实例如下:
Collections.sort(dataMap, new Comparator<Map<String, Object>>() {
@Override
public int compare(Map<String, Object> lhs, Map<String, Object> rhs) {
Double d5 = ((Double) rhs.get(OpenPrice));
Double d6 = (Double) lhs.get(OpenPrice);
if (d5 != null && d6 != null) {
return d5.compareTo(d6);
} else {
return flag;
}
// return d1.compareTo(d2);
}
});
根据返回的int类型,可设置按照从大到小还是从小到大排序