java集合深入理解(一):java集合掌握多少才算合格

(一)概述

java集合是写代码时经常用到,面试时经常问到的一项基础知识。因此了解深入了解集合不管对写代码,或者是面试都有很大的帮助。作为一名合格的java程序员,你需要了解以下关于集合的知识:

1.集合的框架体系

2.Collection接口的特点和使用

3.List和Set接口的特点和使用

4.List接口和Set接口的实现类学习

5.Map接口的特点和使用

6.Map接口的实现类学习

7.Collections工具类的使用

集合的学习方向也分成两方面:

1.应用层面

2.理解层面

应用层面就是对集合的使用,比较简单。理解层面就相对来说比较复杂,需要看一些集合的源码,了解其中的底层实现逻辑。理解之后要能说出各个集合之间的对比,比如:

1.Collection和Map的对比

2.List和Set的对比

3.ArrayList和Vector对比

4.ArrayList和LinkedList对比

5.HashMap和HashTable对比

6.Collection和Collections对比

......

我写这个系列博客的目的也是为了重新整理一下关于集合的知识体系,为接下来的面试做好准备。

(二)集合的特点与好处

说到集合肯定就会想到数组,因为两者都是用来保存一组数据。但是在用数组保存数据(尤其是对象)时存在一些弊端:

1.数组的长度必须提前指定,并且该数组的长度不能修改

2.数组只能保存相同类型的元素。

相比之下,集合就不具备上面的弊端:

1.集合在使用时不用指定长度,可以实现自动扩容

2.集合在没有指定泛型时,保存的对象是Object类型,指定泛型后可以保存对应的类型。

数组比较适合保存基本类型的元素,集合适合保存引用类型的元素,即对象

(三)集合的划分

集合主要分为两大块体系:Collection和Map。Collection保存单列的元素,Map保存双列的元素(键值对)

Collection接口:

Set:元素无序不可重复

List:元素有序可重复

Map接口:

Key-Value键值对集合

Collection接口的继承树如下所示:

Map接口的继承树如下所示

(四)总结

虽然在工作中集合的使用很简单,但是集合的原理一定要很扎实的掌握。集合的源码不算很难,因此看懂集合的部分源代码不仅更加深刻理解java有帮助,而且在面试中也能轻易过了集合这一关。关于这个系列的博客会在未来一个星期内更新完成。

发布了58 篇原创文章 · 获赞 699 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/qq_41973594/article/details/104025349
今日推荐