TreeMap按照key排序

1 篇文章 0 订阅
1 篇文章 0 订阅

TreeMap按照key排序

  • 博客分类: 
  • java
 
Java代码   收藏代码
  1. package test.tool.gui.common;  
  2.   
  3. import java.util.Comparator;  
  4. import java.util.TreeMap;  
  5.   
  6. public class Test {  
  7.       
  8.     public static void main(String[] args) {  
  9.           
  10.         //不指定排序器  
  11.         TreeMap<String, String> treeMap1 = new TreeMap<String, String>();  
  12.         treeMap1.put("2""1");  
  13.         treeMap1.put("b""1");  
  14.         treeMap1.put("1""1");  
  15.         treeMap1.put("a""1");  
  16.         System.out.println("treeMap1="+treeMap1);  
  17.   
  18.         //指定排序器  
  19.         TreeMap<String, String> treeMap2 = new TreeMap<String, String>(new Comparator<String>(){  
  20.   
  21.             /* 
  22.              * int compare(Object o1, Object o2) 返回一个基本类型的整型, 
  23.              * 返回负数表示:o1 小于o2, 
  24.              * 返回0 表示:o1和o2相等, 
  25.              * 返回正数表示:o1大于o2。 
  26.              */  
  27.             public int compare(String o1, String o2) {  
  28.               
  29.                 //指定排序器按照降序排列  
  30.                 return o2.compareTo(o1);  
  31.             }     
  32.         });  
  33.         treeMap2.put("2""1");  
  34.         treeMap2.put("b""1");  
  35.         treeMap2.put("1""1");  
  36.         treeMap2.put("a""1");  
  37.         System.out.println("treeMap2="+treeMap2);  
  38.     }  
  39. }  

 

执行输出结果:

Java代码   收藏代码
  1. treeMap1={1=12=1, a=1, b=1}  
  2. treeMap2={b=1, a=12=11=1}  

 

小结:

1、TreeMap如不指定排序器,默认将按照key值进行升序排序,如果指定了排序器,则按照指定的排序器进行排序。

2、具体的排序规则,开发人员可以在int compare()方法中进行指定。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值