1. SortedMap 接口是排序接口,只要是实现了此接口的子类,都属于排序的子类,TreeMap 也是此接口的一个子类。SortedMap 接口定义如下:
public interface SortedMap<K,V> extends Map<K,V>
  1. 之前讲解的 TreeMap 就是此接口的实现类,所以 TreeMap 可以完成排序功能。在此接口上定义了一些 Map 中没有的方法,下表列出了其中部分方法。
序号 方法 类型 描述
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) 普通 返回指定 key 范围的集合
6 public SortedMap<K, V> tailMap(K fromKey) 普通 返回大于指定 key 范围的集合
  1. 实例:
package self.learn.mapdemo;import java.util.Map;
import java.util.SortedMap;
import java.util.TreeMap;
public class MapDemo {public static void main(String[] args) {SortedMap<String,String> map = null;          // 声明 SortedMap 对象,指定泛型类型map = new TreeMap<String, String>();          // 实例化 SortedMap 对象map.put("C", "learn www.com.cn");        map.put("B", "is interesting");map.put("A", "Java Language");          // 增加内容System.out.print("第一个元素的内容的 key:"+map.firstKey());System.out.println("; 对应的值:"+map.get(map.firstKey()));System.out.print("最后一个元素的内容的 key:"+map.lastKey());System.out.println("; 对应的值:"+map.get(map.lastKey()));System.out.println("返回小于指定范围的集合:");for( Map.Entry<String, String> me : map.headMap("B").entrySet())System.out.println("\t|-"+me.getKey()+"--->"+me.getValue());System.out.println("返回小大于指定范围的集合:");for( Map.Entry<String, String> me : map.tailMap("B").entrySet())System.out.println("\t|-"+me.getKey()+"--->"+me.getValue());System.out.println("部分集合:");for( Map.Entry<String, String> me : map.subMap("B","C").entrySet())System.out.println("\t|-"+me.getKey()+"--->"+me.getValue());}
}

结果:

Java 基础学习之类集框架 十 (SortedMap 接口)相关推荐

  1. Java基础学习——第十六章 Java8新特性

    Java基础学习--第十六章 Java8 新特性 Java8(JDK8.0)较 JDK7.0 有很多变化或者说是优化,比如 interface 里可以有静态方法和默认方法,并且可以有方法体,这一点就颠 ...

  2. Java基础学习——第十四章 网络编程

    Java基础学习--第十四章 网络编程 一.网络编程概述 计算机网络: 把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大.功能强的网络系统,从而使众多的计算机可以方便地互相传递信 ...

  3. JAVA基础学习精简心得笔记整理

    JAVA基础学习精简心得笔记整理 配置java环境变量 Java的运行过程  基本数据类型 引用数据类型 逻辑运算符 数组 方法重载 封装 继承 多态 多态的作用 单例设计模式 接口interface ...

  4. JAVA基础再回首(三十)——JAVA基础再回首完美结束,感概万千!

    JAVA基础再回首(三十)--JAVA基础再回首完美结束,感概万千! 经过了几个月断断续续的回首java基础,终于回首完了,这一路走来体会到了枯燥.乏味.有趣,当然更多是收获,和第一遍学java基础的 ...

  5. java基础学安卓开发_Android开发学习路线之Java基础学习

    原标题:Android开发学习路线之Java基础学习 很多Android学习开发者刚入手Android开发技术时,稍微有点迫切.任何的开发技术都有其基础语言,Android应用程序开发是以Java语言 ...

  6. 尚学堂JAVA基础学习笔记_2/2

    尚学堂JAVA基础学习笔记_2/2 文章目录 尚学堂JAVA基础学习笔记_2/2 写在前面 第10章 IO技术 1. IO入门 2. IO的API 3. 装饰流 4. IO实战 5. CommonsI ...

  7. Java基础学习——第十章 枚举类注解

    Java基础学习--第十章 枚举类&注解 一.枚举类(enum) 1. 枚举类的概念 枚举类:类的对象只有有限个,确定的 线程状态:创建.就绪.运行.阻塞.死亡 当需要定义一组常量时,强烈建议 ...

  8. java基础学习-4

    Java基础学习-4 static 注意事项 重新认识main方法 继承 小练习 子类到底能继承父类中的哪些内容(第126集)*** 继承过程中成员变量和成员方法的访问特点 小练习 小总结 构造方法的 ...

  9. Java基础学习——第六章 面向对象编程(下)

    Java基础学习--第六章 面向对象编程(下) 一.关键词:static 1. static关键字的引入 当我们编写一个类时,其实就是在描述其对象的属性和行为,而并没有产生实质上的对象,只有通过new ...

最新文章

  1. java 中的jframe_【后端开发】java中JFrame是什么
  2. 【HDU】4405 Aeroplane chess
  3. [渝粤教育] 盐城工学院 环境监测与仪器分析 参考 资料
  4. ea211css和cst,djm与ea211发动机对比
  5. Python入门教程!手把手教会你爬取网页数据
  6. opencv codebook学习
  7. 计算机找不到ac97前面板怎么办,计算机Win7系统前面板上的耳机插孔没有声音。解决方法(音频设置+前面板插入方法)...
  8. HFSS、ANSYS Electronics Desktop安装完成后无法启动、无法使用、无法打开问题的解决办法。
  9. Android状态栏添加QS快捷开关
  10. 机器学习实战(五) kaggle练习赛 泰坦尼克获救预测
  11. 3分钟教会你们如何连接CentOS 7外网
  12. python ---- 图像小波变换DWT
  13. 典型的智能工业物联网关BL102常见问题答疑
  14. SpringBoot+Vue实现前后端分离OA办公管理系统
  15. c# lu分解的代码_LU分解法(C语言)
  16. python人名最多数统计,【Python 测验03】人名最多数统计
  17. 工具篇 -- joda-time
  18. uniapp图片无法显示
  19. signature=31a7d54e5a7d4d0a241cc0a54dc64ebc,VS2015安装失败
  20. RK3399 双路mipi拼接屏+HDMI 三屏显示

热门文章

  1. DBA日-周-月工作职责
  2. 输入五个城市从小到大排序-c语言
  3. 利用百度APIStoreSDK获取Json数据并解析加载到ListView上
  4. Numpy攻略系列:repeat函数
  5. Contiki学习平台推荐
  6. 指点迷津!十二星座程序猿个性,你属于哪个?
  7. 利用python打开word文件
  8. 【毕业设计】15-基于单片机的交通灯系统设计(原理图+仿真+论文)
  9. Android手势操作
  10. DPC_WATCHDOG_VIOLATION蓝屏分析