0015 Java学习笔记-集合-TreeMap集合
主要的方法
- 构造方法:
- TreeMap();
- TreeMap(Comparator<?super K> comparator);
- TreeMap(Map<? extends K,? extends V> m);
- TreeMap(SortedMap m);
- 方法:
- Map.Entry firstEntry();
- Object firstKey();
- Map.Entry lastEntry();
- Object lastKey();
- Map.Entry higherEntry(Object key);
- Object higherHey(Object key);
- Map.Entry lowerEntry(Object key);
- Object lowerKey(Object key);
- NavigableMap subMap(Object fromKey,boolean fromInclusive,Object toKey,boolean toInclusive);
- SortedMap subMap(Object fromKey,Object toKey);
- SortedMap tailMap(Object fromKey);
- NavigableMap tailMap(Object fromKey,boolean inclusive);
- SortedMap headMap(Object toKey);
- NavigableMap headMap(Object toKey,boolean inclusive);
TreeMap特点
- Set-->SoredSet-->TreeSet
- Map-->SoredMap-->TreeMap
- TreeMap用红黑树结构对Key进行排序;HashMap将key-value存储在特定位置,而TreeMap则将key-value按顺序存储
TreeMap的排序
- 自然排序:
- TreeMap所有的key都必须实现Comparable接口,都必须是同一个类的对象
- 定制排序:
- 在构造TreeMap对象是,可以传入一个排序器,即Comparator对象,这样就不需要key实现Comparable接口了
equals()、compareTo()、TreeMap
- TreeMap判断两个key相等的标准:compareTo() 返回0
- 两个key的equals()方法返回true时,compareTo()应该返回0
其他
- Set和Map的关系十分密切,Java源码先实现了HashMap、TreeMap等集合,然后通过包装一个所有的value为null的Map集合实现了Set集合类
0015 Java学习笔记-集合-TreeMap集合的更多相关文章
- Java学习笔记27(集合框架一:ArrayList回顾、Collection接口方法)
集合:集合是java中提供的一种容器,可以用来存储多个数据 集合和数组的区别: 1.数组的长度是固定的,集合的长度是可变的 2.集合中存储的元素必须是引用类型数据 对ArrayList集合的回顾 示例 ...
- Java学习笔记-基础语法Ⅶ-集合
集合 集合类特点:提供一种存储空间可变的存储模型,存储的数据容量可以随时发生改变 这里需要回顾一下,因为数组和字符串一旦创建,就不可改变,需要区分一下 import java.util.ArrayLi ...
- 【Java学习笔记】Map集合的keySet,entrySet,values的用法例子
import java.util.Collection; import java.util.HashMap; import java.util.Iterator; import java.util.M ...
- Java 学习笔记 两大集合框架Map和Collection
两大框架图解 Collection接口 由第一张图,我们可以知道,Collection接口的子接口有三种,分别是List接口,Set接口和Queue接口 List接口 允许有重复的元素,元素按照添加的 ...
- Java学习笔记34(集合框架八:综合案例:模拟斗地主的洗牌发牌)
规则: 1.54张扑克牌,有花色 2.顺序打乱,一人一张依次发牌,一人17张,留三张作为底牌 3.看牌:按大小王2A....43的序排列打印 示例: package demo; import java ...
- Java学习笔记33(集合框架七:Collections工具类)
数组有工具类,方面操作数组 集合也有工具类:Collections 常用方法示例: package demo; import java.util.ArrayList; import java.util ...
- Java学习笔记32(集合框架六:Map接口)
Map接口与Collection不同: Collection中的集合元素是孤立的,可理解为单身,是一个一个存进去的,称为单列集合 Map中的集合元素是成对存在的,可理解为夫妻,是一对一对存进去的,称为 ...
- Java学习笔记31(集合框架五:set接口、哈希表的介绍)
set接口的特点: 1.不包含重复元素 2.set集合没有索引,只能用迭代器或增强for循环遍历 3.set的底层是map集合 方法和Collection的方法基本一样 set接口的实现类HashSe ...
- Java学习笔记30(集合框架四:List接口)
List接口继承自Collection接口 具有重要的三大特点: 1.有序集合:存入和取出的顺序一致 2.此接口的用户可以对列表中每个元素插入位置精确的控制:可以通过索引操作 3.可以存储重复元素 L ...
随机推荐
- Eclipse导入Java项目时“No projects are found to import”错误的处理
用Eclipse导入Java项目时,经常会出现“No projects are found to import”错误(尤其是导入网上下载的项目时),这是因为文件夹里面没有.project和.class ...
- oracle 数据类型详解---日期型(转载)
oracle 数据类型详解---日期型 oracle数据类型看起来非常简单,但用起来会发现有许多知识点,本文是我对ORACLE日期数据类型的一些整理,都是开发入门资料,与大家分享: 注:由于INTER ...
- 《Head First Java》——对象的行为
类所描述的是 对象知道什么与执行什么! 调用两个参数的方法,并传入两个参数 void go(){ TestStuff t = new TestStuff(); t.takeTwo(12,34); } ...
- python 颜色定义
1.颜色定义说明格式:\033[显示方式;前景色;背景色m前景色 背景色 颜色---------------------------------------30 40 黑色31 41 红色32 42 ...
- Java Session超时设置
1.jsp页面直接设置 ); 2.web.xml设置,覆盖 ...
- Fiddler (五) Mac下使用Fiddler
Fiddler是用C#开发的. 所以Fiddler不能在Mac系统中运行. 没办法直接用Fiddler来截获MAC系统中的HTTP/HTTPS, Mac 用户怎么办呢? Fiddler可 ...
- Python实现装饰模式的一段代码
# 实现装饰模式的一段代码 import functools def log(func): @functools.wraps(func) def wrapper(*args,**kw): print( ...
- ajax传参到实体类对应字段
之前看公司的代码,从页面ajax传参数到接口类,接口类用一个实体接收.我一直以为c#会自动识别,赋值到同名的字段. 我曾和朋友讨论过,双方辩论.朋友认为c#没有这种功能,没有这样高级匹配的机制.而我因 ...
- Salvattore:CSS 驱动的 jQuery Masonry 插件
Salvattore 是一个 jQuery 砌体的替代,使用 CSS 驱动的配置.Salvattore 根据您指定的列数组织你的 HTML 元素.容器中的每一个项目会一个接一个被放置在列内,只需要简单 ...
- CSS3 使用自定义字体
CSS3 @font-face 规则 在 CSS3 之前,web 设计师必须使用已在用户计算机上安装好的字体.通过 CSS3,web 设计师可以使用他们喜欢的任意字体.当您您找到或购买到希望使用的字体 ...