您的当前位置:首页正文

java中map接口是什么?

2024-07-18 来源:客趣旅游网

本教程操作环境:windows7系统、java10版,DELL G3电脑。

1.概念

一种通过键值(key-value)查找的映射表集合,例如,根据Student的name查找对应Student的Map。

从数据结构上来讲,它是一个接口

Map里存放顺序是无序的 举例:key1=value1 key2=value2 key5=value5 key3=value3

2.用法

(1)Map用于保存具有映射关系的数据,Map里保存着两组数据:key和value,它们都可以使任何引用类型的数据,但key不能重复。所以通过指定的key就可以取出对应的value。

(2)Collection中的集合,元素是孤立存在的(理解为单身),向集合中存储元素采用一个个元素的方式存储。 Map中的集合,元素是成对存在的(理解为夫妻)。每个元素由键与值两部分组成,通过键可以找对所对应的 值。

(3)Collection中的集合称为单列集合,Map 中的集合称为双列集合。需要注意的是,Map中的集合不能包含重复的键,值可以重复;每个键只能对应一个值。

3.实例

public static void main(String[] args) {
////Map基于散列表的实现。插入和查询“键值对”的开销是固定的。可以通过构造器设置容量capacity和负载因子load factor,以调整容器的性能。
Map map = new HashMap();
  
//类似于HashMap,但是迭代遍历它时,取得“键值对”的顺序是其插入次序,或者是最近最少使用(LRU)的次序。只比HashMap慢一点。而在迭代访问时发而更快,因为它使用链表维护内部次序。
Map map2 = new LinkedHashMap();
  
//底层是二叉树数据结构,线程不同步,可用于给Map集合中的键进行排序。
Map map3 = new TreeMap();
  
//Hashtable是线程安全的,它的方法都加了synchronized修饰符
Map map4 = new Hashtable();
  
//ConcurrentHashMap通常只被看做并发效率更高的Map,用来替换其他线程安全的Map容器,比如Hashtable和Collections.synchronizedMap。
Map map5 = new ConcurrentHashMap();
 
        //还有其他的实现类......
}

以上就是java中map接口的一些使用方法,本篇我们只是对map有了概念上的初步了解,想深入学习的小伙伴可以持续关注一下。更多Java学习指路:


Top