# Map映射关系

> 来源：梦飞idc云平台 | 原文：https://www.mfisp.com/22183.html | 发布：2023-07-19 | 更新：2023-07-19 | 分类：建站教程

①HashMap  
继承AbstractMap实现了Map、Cloneable、Serializable等接口;非线程安全

 

②HashTable  
继承Dictionary实现Map、Cloneable、Serializable等接口;线程安全

 

③TreeMap  
继承AbstractMap实现NavigableMap、Cloneable、Serializable等接口;非线程安全

 

④LinkedHashMap  
LinkedHashMap是HashMap的子类;基本特性和使用与HashMap保持一致。对于Map而言,如果项目中要求输入的顺序和输出的相同,此时即可使用LinkedHashMap实现。

 

(三)Set 是元素无序、不可重复、可为空的集合

 

①HashSet  
由HashMap实现,不保证元素顺序且允许使用null元素;非线程安全

 

②TreeSet  
继承AbstractSet实现了NavigableSet、Cloneable、Serializable等接口;非线程安全

 

以上主要从主要继承关系和接口实现的角度,分析各类库的特性。希望大家有一个整体的把握。

 

3.常用方法

 

(一)List常用方法

 

list的大小size() -- 返回int类型  
获取第i个元素get(int i) -- 返回元素的值  
判断是否为空isEmpty() --返回boolean类型  
是否包含某个元素contains(Object o) --返回boolean类型  
添加元素add(Object o) -- 返回boolean类型  
数组元素索引值indexOf(Object o) -- 返回int类型  
移除数组元素remove(Object o) -- 返回boolean类型,等等。

 

(二)Map常用方法:

 

获取map的大小size() -- 返回int类型  
map的清空clear()  
包含键containKey(Object key) -- 返回boolean类型  
包含值containValue(Object value) -- 返回boolean类型  
获取指定元素get(Object key) --返回value的数据类型  
添加元素put(Object key,Object value) --返回添加后的map  
移除元素remove(Object key) -- 返回移除的map  
修改元素的值replace(Object key,Object value) -- 返回修改后的map,等等。

 

(三)Set常用方法:

 

添加元素add(Object o)-- 返回boolean类型  
是否包含元素contains(Object o)--返回boolean类型  
获取set的大小size()--返回int类型  
判断set是否为空isEmpty()--返回boolean类型  
清空set中的元素clear()  
移除元素remove(Object o) --返回boolean类型,等等。

 

(四)数组常用方法:

 

元素个数length属性  
末尾添加元素:push()  
开头添加元素unshift()  
删除最后一个元素pop()  
删除第一个元素shift()  
截取数组元素slice()  
数组翻转reverse() 等,  
另外数组工具类Arrays也提供了如asList(),sort()等诸多操作数组的方法。有兴趣的朋友可以查阅文档或编程实践之。

 

关于java集合框架的更多知识点,建议参阅API文档。  
至此,介绍了一些java常用的数据类型的基本知识。

 

以上基础知识,建议编码实践,加深理解。熟练掌握基础后可以研究研究源码。  
下篇将和大家分享各类数据结构的遍历问题、转换问题。

---
本页由 梦飞idc云平台（https://www.mfisp.com）提供。站点导航见 https://www.mfisp.com/llms.txt
