2014-11-01 133 views
-2

我需要按以下顺序对映射中提及的符号进行排序。
首先空白,秒*,**第三,第四小写字母顺序字母,按字母顺序排列5大写字母,按升序排列,最后的符号()java为一些特殊字符,数字,字母和空格排在一起

Map<String, String> symbols = new HashMap<String, String>(); 
    symbols.put("001","*"); 
    symbols.put("002","**"); 
    symbols.put("003"," "); 
    symbols.put("004","s"); 
    symbols.put("005","A"); 
    symbols.put("006","g"); 
    symbols.put("007","f"); 
    symbols.put("008","6"); 
    symbols.put("009","9"); 
    symbols.put("0010","()"); 
    symbols.put("0011","*"); 
    symbols.put("0012","10"); 
    symbols.put("0013","Y"); 
    symbols.put("0014","**"); 
    symbols.put("0015","()"); 
    symbols.put("0016","**"); 
    symbols.put("0017"," "); 

为清楚起见第6号:最终解决方案就像我提到的那样,将LinkedHashMap与排序记录相结合。

+2

什么是你的问题?你的尝试在哪里? – Ezequiel 2014-11-01 10:26:12

回答

2

将这项工作对你

` Map<Integer, String> symbols = new HashMap<Integer, String>(); 
     symbols.put(1,"*"); 
     symbols.put(2,"**"); 
     .............` 
+0

不应该改变地图的关键。这是必要的。 – user3924979 2014-11-01 10:39:59

+0

对不起,对于键为整数,认为它很容易排序 – 2014-11-01 10:40:56

+0

我需要根据地图的值进行排序。 – user3924979 2014-11-01 10:42:14

相关问题