package util.xhy;import java.util.*; public class hashmapsort { public static void main(String args[]){ MapsMap = new HashMap (); sMap.put("肖红阳",198); sMap.put("李小东",271); sMap.put("陈博弈",89); sMap.put("李天一",50); ArrayList arraylist_key=new ArrayList(); ArrayList arraylist_value=new ArrayList(); hashmapsort hashmapsort=new hashmapsort(); hashmapsort.mysort(sMap, arraylist_key, arraylist_value); System.out.println(arraylist_key); System.out.println(arraylist_value); } /* * 将HashMap数据按值排序,将排序后的key组和value组分别存入数组中 * @sMap 要排序的Map * @arraylist_key 保存排序后的key数组 * @arraylist_value 保存排序后的value数组 */ public void mysort(Map sMap,ArrayList arraylist_key,ArrayList arraylist_value){ Object[] value_arr = sMap.values().toArray(); Arrays.sort(value_arr); for(Object value : value_arr){ Iterator iter=sMap.keySet().iterator(); while(iter.hasNext()){ Object key_tmp=iter.next(); Object value_tmp=sMap.get(key_tmp); if(value_tmp==value){ arraylist_key.add(key_tmp); arraylist_value.add(value_tmp); } } } }}