zoukankan      html  css  js  c++  java
  • SortedMap接口

    http://book.51cto.com/art/200908/141101.htm

    13.8  SortedMap接口

    SortedMap接口是排序接口,只要是实现了此接口的子类,都属于排序的子类,TreeMap也是此接口的一个子类。SortedMap接口的定义如下:

    1. public interface SortedMap<K,V>  
    2. extends Map<K,V> 

    之前讲解的TreeMap就是此接口的实现类,所以TreeMap可以完成排序的功能。在此接口上定义了一些Map中没有的方法,表13-14列出了部分的方法。

    表13-14  SortedMap接口扩展的方法

    序号

        

    类型

        

    1

    public Comparator<? super K>

    comparator()

    普通

    返回比较器对象

    2

    public K firstKey()

    普通

    返回第一个元素的key

    3

    public SortedMap<K,V> headMap

    (K toKey)

    普通

    返回小于等于指定

    key的部分集合

    4

    public K lastKey()

    普通

    返回最后一个元素的key

    5

    public SortedMap<K,V> subMap

    (K fromKey,K toKey)

    普通

    返回指定key范围的集合

    6

    public SortedMap<K,V> tailMap

    (K fromKey)

    普通

    返回大于指定key

    的部分集合

    下面通过一个范例让读者对以上的操作有所了解。

    范例:SortedMap演示

    1. package org.lxh.demo13.mapdemo;  
    2. import java.util.Map;  
    3. import java.util.SortedMap;  
    4. import java.util.TreeMap;  
    5. public class SortedMapDemo {  
    6.     public static void main(String args[]){  
    7.         SortedMap<String, String> map = null;  // 声明SortedMap对象  
    8.         map = new TreeMap<String, String>();    // 实例化SortedMap对象  
    9.         map.put("D、jiangker", "http://www. jiangker.com/") ; // 增加内容  
    10.         map.put("A、mldn", "www.mldn.cn");         // 增加内容  
    11.         map.put("C、zhinangtuan", "www. zhinangtuan.net.cn"); // 增加内容  
    12.         map.put("B、mldnjava", "www.mldnjava.cn");     // 增加内容  
    13.         System.out.print("第一个元素的内容的key:"  + map.firstKey()) ;  
    14.         System.out.println(";对应的值:" +  map.get(map.firstKey())) ;  
    15.         System.out.print("最后一个元素的内容的key:"  + map.lastKey()) ;  
    16.         System.out.println(";对应的值:" + map.get(map.lastKey())) ;  
    17.         System.out.println("返回小于指定范围的集合") ;  
    18.         for(Map.Entry<String,String> me :  map.headMap("B、mldnjava").   
    19. entrySet()){  
    20.             System.out.println("\t|- " + me.getKey() + " --> " + me.   
    21. getValue());  
    22.         }  
    23.         System.out.println("返回大于指定范围的集合") ;  
    24.         for(Map.Entry<String,String> me : map.tailMap("B、mldnjava").   
    25. entrySet()){  
    26.             System.out.println("\t|- " +  me.getKey() + " --> " + me.   
    27. getValue());  
    28.         }  
    29.         System.out.println("部分集合") ;  
    30.         for(Map.Entry<String,String> me :  map.subMap("A、mldnjava","C、  
    31. zhinangtuan").entrySet()){  
    32.             System.out.println("\t|- " + me.getKey() + " --> " + me.   
    33. GetValue());  
    34.         }  
    35.     }  

    程序运行结果:

    1. 第一个元素的内容的key:A、mldn;对应的值:www.mldn.cn  
    2. 最后一个元素的内容的key:D、jiangker;对应的值: http://www.jiangker.com/  
    3. 返回小于指定范围的集合  
    4.     |- A、mldn-->www.mldn.cn  
    5. 返回大于指定范围的集合  
    6.     |- B、mldnjava-->www.mldnjava.cn  
    7.     |- C、zhinangtuan-->www.zhinangtuan.net.cn  
    8.     |- D、jiangker-->http://www.jiangker.com/  
    9. 部分的集合  
    10.     |- B、mldnjava-->www.mldnjava.cn 

    以上规定了很多Map接口中没有的方法,但是如果要操作以上的方法,则对象所在的类必须实现Comparable接口。


    ---------------------------------------------------------------------------------------------------------------------------------
    copyright:http://www.cnblogs.com/anee/
  • 相关阅读:
    SQL 左外连接,右外连接,全连接,内连接
    CentOS 7.0默认使用的是firewall作为防火墙
    Python-WEB自动化-三种等待方式
    Python + Selenium的web自动化框架
    BS架构和CS架构的区别
    ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
    CentOS 7镜像下载
    CentOS7各个版本镜像下载地址
    CentOS7的Minimal版本安装
    Python 文字转语音
  • 原文地址:https://www.cnblogs.com/anee/p/2675893.html
Copyright © 2011-2022 走看看