HashMap的两种排序方式
2015-08-25 20:23
441 查看
package Test4; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; import java.util.List; import java.util.Map; public class Test { public static void main(String[] args) { Map<String, Integer> map = new HashMap<String, Integer>(); map.put("d", 2); map.put("c", 1); map.put("b", 1); map.put("a", 3); List<Map.Entry<String, Integer>> infoIds =
new ArrayList<Map.Entry<String, Integer>>(map.entrySet()); //ArrayList(Collection<? extends E> c)是ArrayList的一个不常用的构造方法,
构造一个包含指定 collection 的元素的列表。 //排序前 for (int i = 0; i < infoIds.size(); i++) { String key= infoIds.get(i).getKey(); int value= infoIds.get(i).getValue(); System.out.println(key+":"+value); } /*输出结果: d:2 b:1 c:1 a:3 */ //排序 //重写compare方法 Collections.sort(infoIds, new Comparator<Map.Entry<String, Integer>>() { public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) { //return (o2.getValue() - o1.getValue()); //根据value排序 return (o1.getKey()).toString().compareTo(o2.getKey());//根据key排序 } }); //排序后 for (int i = 0; i < infoIds.size(); i++) { String key= infoIds.get(i).getKey(); int value= infoIds.get(i).getValue(); System.out.println(key+":"+value); } //根据key排序 //a:3 //b:1 //c:1 //d:2 //根据value排序 //a:3 //d:2 //b:1 //c:1 } }
相关文章推荐
- [Java]HashMap的两种排序方式
- hashmap两种排序方式
- HashMap的两种排序方式
- HashMap的两种排序方式
- HashMap的两种排序方式
- HashMap的两种排序方式
- HashMap的两种排序方式
- Java_HashMap的两种排序方式
- HashMap的两种排序方式
- 【Java】HashMap的两种排序方式
- HashMap的两种排序方式
- [Java]HashMap的两种排序方式
- HashMap的两种排序方式
- HashMap的两种排序方式
- 【转载】HashMap的两种排序方式
- hashmap的两种排序方式
- HashMap的两种排序方式
- HashMap的两种排序方式
- HashMap的两种排序方式
- [Java]HashMap的两种排序方式