乐码库:一个极速、放心、纯净的下载站! 更新: 资源发布
  • 您的位置:首页 > 技术文档 > Java > 浅谈java中的TreeMap 排序与TreeSet 排序
  • 收藏本页
      浅谈java中的TreeMap 排序与TreeSet 排序
      发布时间:2016-12-21 08:10:54 关键词: java,treemap,treeset
      内容简介:下面小编就为大家带来一篇浅谈java中的TreeMap 排序与TreeSet 排序。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    TreeMap:

    package com;
    
    import java.util.Comparator;
    import java.util.TreeMap;
    
    public class Test5 {
    
    	/**
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		TreeMap<String, String> tree = new TreeMap<String, String>(
    				new Comparator<Object>() {
    					@Override
    					public int compare(Object o1, Object o2) {
    						// TODO Auto-generated method stub
    						if(o1 == null || o2 == null){
    							return 0;
    						}
    						
    						return o1.toString().compareTo(o2.toString());
    					}
    				}
    		);
    				
    		
    		tree.put("k", "1");
    		tree.put("ba", "2");
    		tree.put("z", "3");
    		tree.put("d", "4");
    		tree.put("e", "5");
    		tree.put("an", "6");
    		tree.put("c", "7");
    		
    		for(String str : tree.keySet()){
    			System.out.println(str);
    		}
    	}
    }

    经测试默认是按照 KEY 进行排序的。

    但是可以写对象比较器,进行自定义排序。

    TreeSet : 自定义倒序排序,默认按照正序排序,1,2,3,4,5,6

    package com;
    
    import java.util.Comparator;
    import java.util.TreeSet;
    
    public class Test6 {
    
    	/**
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		TreeSet<Object> tree = new TreeSet<Object>(new Comparator<Object>() {
    
    			@Override
    			public int compare(Object o1, Object o2) {
    				// TODO Auto-generated method stub
    				if(o1 == null || o2 == null){
    					return 0;
    				}
    				
    				if(Integer.parseInt(o1.toString()) > Integer.parseInt(o2.toString())){
    					return -1;
    				}else if(Integer.parseInt(o1.toString()) < Integer.parseInt(o2.toString())){
    					return 1;
    				}else{
    					return 0;
    				}
    			}
    		});
    		
    		tree.add(4);
    		tree.add(5);
    		tree.add(6);
    		tree.add(1);
    		tree.add(2);
    		tree.add(3);
    
    		for(Object o : tree){
    			System.out.println(o);
    		}
    	}
    
    }
    

    以上这篇浅谈java中的TreeMap 排序与TreeSet 排序就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持乐码库。

      最新更新
      热门排行榜