温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java集合容器有什么特点

发布时间:2021-11-24 16:15:48 来源:亿速云 阅读:307 作者:iii 栏目:大数据

本篇内容介绍了“Java集合容器有什么特点”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

一、集合容器简介

集合容器是Java开发中最基础API模块,通常用来存储运行时动态创建的元素,基本特点如下:

  • 泛型特点,存储任意类型对象;

  • 动态扩容,存储任意数量对象;

这里对存储数量是受到程序和内存等环境制约的,从List的get()方法中可以看出,index的范围是Integer.MAX_VALUE。

二、API体系

三大核心接口:List、Set继承Collection, Map独立接口

List与Set体系

Java集合容器有什么特点

List体系核心API:ArrayList,LinkedList、Vector

Set体系核心API:HashSet、TreeSet、LinkedHashSet

Queue队列API:PriorityQueue、LinkedHashSet

Map体系

Java集合容器有什么特点

Map体系核心API:HashMap、LinkedHashMap、TreeMap、Hashtable

三、基础容器详解

1、核心内容

Java集合容器有什么特点

  • 元素存储,增删改查判断等基础用法

  • API方法中线程安全问题

  • 容器初始化大小与动态扩容机制

  • 底层数据结构特点

  • 同一接口或者不同接口体系容器对比

基本熟练使用并理解集合容器,需要知道如上几块内容:API基础用法,线程安全问题;容器大小与扩容;结构特点,数组、链表、哈希表;

2、API体系详解

Collection:集合容器的根接口,定义公共方法;

List体系

  • ArrayList

维护Object数组实现,特点:查询快,增删慢,非线程安全,所以效率高。

  • LinkedList

底层维护链表数据结构实现,特点:查询慢,增删快,非线程安全,所以效率高。

  • Vector

底部维护Object数组,实现和ArrayList一样,但是Vector是线程安全,效率低。

Set体系

  • HashSet

底层是使用了哈希表来支持的,特点:存取速度快,元素唯一且无序。

  • LinkedHashSet

底层数据结构是链表和哈希表,链表保证元素有序性,哈希表保证元素唯一性,非线程安全。

  • TreeSet

数据结构是红黑树,如果元素具备自然顺序的特性,那么就按照元素自然顺序的特性进行排序,或者基于比较器自定义排序。

Map体系:

Map接口的实现类,具备的特点:存储的数据都是以键值对的方式,键不可以重复,值可重复。

  • HashMap

底层使用hashCode表来实现向HashMap中添加元素,允许使用null值和null键,不保证元素的顺序固定。

  • TreeMap

TreeMap:基于二叉树的数据结构实现的,会对具备自然特性的键进行排序存储:元素的键具备自然特性,直接排序存储;不具备自然特性,实现Comparable接口,在ComparaTo中定义排序规则。

  • HashTable

线程安全,相对效率低,不允许使用null值。

3、容器遍历

  • 基于for、foreach、while流程控制

  • Iterable迭代器核心接口

  • Lambda表达式:遍历、分组、查询

“Java集合容器有什么特点”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI