java List its=new ArrayList(); Map按value中的某字段排序

时间:2023-03-09 01:46:01
java List<Item> its=new ArrayList<Item>(); Map按value中的某字段排序

public List<Item> getAllItem(){

Map<Long, Item> itemDic = new HashMap<Long, Item>();
            List<Map.Entry<Long, Item>> entryList = new ArrayList<Map.Entry<Long, Item>>(itemDic.entrySet());  
            if(entryList.size()>0){
                List<Item> its=new ArrayList<Item>();
                Collections.sort(entryList, new Comparator<Map.Entry<Long, Item>>() {     
                    public int compare(Map.Entry<Long, Item> it1, Map.Entry<Long, Item> it2) {        
                        return (it1.getValue().getType() - it2.getValue().getType());//根据value排序  
                    }  
                });  
                
                for (int i = 0; i < entryList.size(); i++) {  
                    its.add(itemDic.get(entryList.get(i).getKey()));
                }
                System.out.println("按类型排序:>>>>>00"+its);  
                return its;
            }
        return null;
     }