TreeMap接口的实现类

作者:Flieny 撰写日期:20190509
使用软件及关键技术:JAVASE1.7、MyEclipse10

TreeMap接口的实现类

Map接口常用的实现类有HashMap和TreeMap,建议使用Hash的Map集合。因为由HashMap类实现的Map集合添加和删除映射关系效率更高。

TreeMap中的映射关系存在一定的顺序,如果希望Map集合中的对象也存在一定的顺序,应该使用TreeMap类实现Map集合。

TreeMap类不仅实现了Map接口,还实现了其他的接口,因此,TreeMap集合中的映射关系具有一定的顺序。

但在添加、删除和定为映射关系时,TreeMap类比HashMap类的执行性能稍差,TreeMap是不允许键对象是null的。

Import java.util.TreeMap;
Public class TreeMapDemo{
   Public static void main(String[] args){
    TreeMap<Integer,String> map=new TreeMap<>();
Map.put(1,”str1”);
Map.put(2,”str2”);
Map.put(3,”str3”);
Map.put(4,”str4”);
Map.put(5,”str5”);
System.out.println(map);
//获取主键(key)
System.out.println(map.firstKey());
System.out.println(map.firstEntry());
//获取最后值(key)
System.out.println(map.lastKey());
System.out.println(map.lastEntry());
//获取大于这个且是最小值(key)
System.out.println(map.higherKey(2));
System.out.println(map.higherEntry2());
//获取最小值(Key)
System.out.println(map.lowerKey(2));
System.out.println(map.lowerEntry(2));
//截断
System.out.println(map.headMap(4));
System.out.println(map.tailMap(2));
//使用subMap方法来使值从哪到哪
System.out.println(map.subMap(2,5));
}
}

返回值结果

{1=str1,2=str2,3=str3,4=str4,5=str5}
1
1=str1
5
5=str5
3
3=str3
1
1=str1
{1=str1,2=str2,3=str3}
{2=str2,3=str3,4=str4,5=str5}
{2=str2,3=str3,4=str4}

TreeMap的用法差不多和Map相同,并且Tree的方法一般都是是成对出现的。

FirstKey方法是返回此映射中的当前的第一个最小值。
FirstEntry 返回一个与此映射中最小键关联的键-值映射关系,如果映射为空则返回null

LastKey 返回与此映射中的最大键关系的键-值映射关系,如果映射为空这返回null
LastEntry 返回映射当前最后一个(最高)键

Highekey 返回严格大于给定键的最小键,如果不存在这样的键,则返回null
HigherEntry 返回一个键-值映射关系,它与严格大于给定键的最小键关联,如果不存在这样的键,则返回null

Lowerkey返回严格小于给定键的最大键,如果不存在这个的键,则返回null
LowerEntry 返回一个键-值映射关系,它与严格小于给定键的最大键关联,如果不存在这样的键。则返回null

HaadMap 返回此映射的部分视图 其键值严格小于tokey
TailMap 返回此映射的部分视图 其值大于等于fromKey

subMap返回此映射的部分视图,其键值范围从from Key(包括)到toKey(不包括)

发布了29 篇原创文章 · 获赞 51 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_35426391/article/details/90038821