导航:首页 > 编程语言 > javalistmap排序

javalistmap排序

发布时间:2023-02-04 02:17:22

java list<map> 排序

用我这个排序不是更简单么

importjava.util.ArrayList;
importjava.util.Collections;
importjava.util.Comparator;
importjava.util.HashMap;
importjava.util.List;
importjava.util.Map;

publicclass${

publicstaticvoidmain(String[]args){

List<Map<Object,Object>>list=newArrayList<Map<Object,Object>>();

Map<Object,Object>map=newHashMap<Object,Object>();

Map<Object,Object>map1=newHashMap<Object,Object>();
Map<Object,Object>map2=newHashMap<Object,Object>();
Map<Object,Object>map3=newHashMap<Object,Object>();

map.put("number",1);
map1.put("number",2);
map2.put("number",4);
map3.put("number",3);
list.add(map);
list.add(map1);
list.add(map2);
list.add(map3);

Collections.sort(list,newComparator<Map<Object,Object>>(){

publicintcompare(Map<Object,Object>o1,Map<Object,Object>o2){

intmap1value=(Integer)o1.get("number");
intmap2value=(Integer)o2.get("number");

returnmap1value-map2value;
}
});
System.out.println(list);
}
}

Ⅱ Java中List Set Map 是否有序等总结

其实都是有序的。
不过set

map
的排序规则不是通常意义上的1,2,3这样排的而是按照HashCode,算法比较复杂,所以通常把set和map当作无序的
list
的有序很简单,就是按添加的顺序

Ⅲ Java中 map集合能排序吗

Java中的Map默认是对元素不排序的,但是Map的实现类TreeMap能够把它保存的记录根据key排序,默认是按升序排序。如果我们想要改变排序方式,则需要使用比较器:Comparator。

Ⅳ java中list和map的区别

List中的对象按照索引位置排序,可以有重复对象,允许按照对象在集合中的索引位置检索对象,如通过list.get(i)方式来获得List集合中的元素。
Map中的每一个元素包含一个键对象和值对象,它们成对出现。键对象不能重复,值对象可以重复。

Ⅳ java中list里面存放map,根据map中的某两个个字段进行排序

packagecom.compare.test;

importjava.util.ArrayList;
importjava.util.HashMap;
importjava.util.List;
importjava.util.Map;

publicclassMain{
publicstaticvoidmain(String[]args){
MainmainTest=newMain();
mainTest.sortMap();
}

publicvoidsortMap(){
List<Map<Integer,Double>>maps=newArrayList<Map<Integer,Double>>();
for(inti=0;i<10;i++){
HashMap<Integer,Double>map=newHashMap<Integer,Double>();
for(intj=0;j<2;j++){
map.put(j,Math.random());
}
maps.add(map);
}

for(Map<Integer,Double>map:maps){
System.out.println(getValue(map));
}
System.out.println("************************");
Map<Integer,Double>currentMap;
for(inti=0;i<maps.size()-1;i++){
for(intj=0;j<maps.size()-i-1;j++){
if(getValue(maps.get(j))>getValue(maps.get(j+1))){
currentMap=maps.get(j+1);
maps.set(j+1,maps.get(j));
maps.set(j,currentMap);
}
}
}

for(Map<Integer,Double>map:maps){
System.out.println(getValue(map));
}}

publicDoublegetValue(Map<Integer,Double>currentMap){
returncurrentMap.get(0)+currentMap.get(1);
}
}

我采用最简单的排序大数沉底。而且getValue
方法你可以自己实现,决定使用哪几个进行排序。(我们有进行key值不存在的判断)

Ⅵ 如何对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());
}

});

阅读全文

与javalistmap排序相关的资料

热点内容
php内核源码入口 浏览:910
java内存图片 浏览:227
电器原理pdf 浏览:273
谷歌注册无法连接网络连接服务器地址 浏览:428
在识货app上怎么联系客服 浏览:470
javac数据类型 浏览:480
kmp算法算法导论 浏览:193
单反照片批量压缩 浏览:340
javazip压缩目录 浏览:712
89c52单片机晶振 浏览:206
pdf转jpgmac 浏览:799
65压缩机多少钱 浏览:120
同类型服务app如何脱颖而出 浏览:762
mtm月线金叉选股预警公式源码 浏览:227
javasapwebservice 浏览:709
程序员老了去做什么 浏览:404
linux小括号 浏览:773
已加密的u盘怎么清空 浏览:433
怎么拿到服务器权限 浏览:194
延时摄影app如何保存 浏览:195