
Java集合
文章平均质量分 94
赵彦祖
学而不思则罔,思而不学则殆。
展开
-
Java集合之HashMap
本篇介绍集合中的HashMap的数据结构以及主要方法的源码。HashMap基于散列表,继承了AbstractMap,实现了Map接口,存储的也是无序的键值对,可以存储null键和null值。其内部也是通过维护一个链表数组来实现各个功能,在JDK1.8中链表长度大于8时会转变为红黑树。一个一般的HashMap的数据结构可能类似下图:下面是HashMap的几个主要成员变量,此处简单了解,后面用到会详细介绍。//HashMap即由此可以存储键值对的链表的数组实现transient Node原创 2020-09-28 00:27:04 · 285 阅读 · 0 评论 -
Java集合之集合概述
Java集合框架图:由上图可知容器主要分为List、Set和Map三种,其中List和Set拥有共同的父接口Collection。List、Set和Map我会在后面的文章中分别详细介绍,此篇文章只介绍Collection、Iterator以及不同容器之间的区别。Collection接口继承了Iterable接口,意味着Collection及其实现类都是可迭代的,Iterable的迭代则依赖...原创 2019-09-10 00:03:34 · 227 阅读 · 0 评论 -
Java集合之List容器
上一篇文章中我们介绍了Collection和迭代器以及遍历集合的几种方式,Collection容器分为以List和Set两大类,这篇文章我们首先介绍一下List及其实现类。ListList容器中存放的元素是有序且可重复的,主要实现类为ArrayList,LinkedList和Stack。//返回容器中指定位置的对象E get(int index);//替换指定位置的元素E se...原创 2019-09-17 23:14:57 · 1039 阅读 · 1 评论 -
Java集合之Set容器
这一篇文章我们讨论容器中的Set。SetSet也继承于Collection,与List相比,Set存储的元素是无序且不可重复的。Set的常用实现类有HashSet和TreeSet。因为Set的方法全部继承于Collection就不再赘述。HashSetHashSet是基于HashMap实现的,但由于上一篇HashMap的文章没给HashMap讲清楚,等回头写了散列表和红黑树的文章再...原创 2019-10-09 23:12:26 · 126 阅读 · 0 评论 -
Java集合之Map容器
Map的值的存储方式与Collection的存储方式稍有不同,Map中是键值对存储,键不能重复,但值可以重复。Map的实现类有HashMap、WeakHashMap、Hashtable和TreeMap,下面我们逐一介绍。MapMap与Collection无关,他们的存储值的方式也完全不同,只是在实现某些数据结构的时候可能会互相依赖。//键值对数量int size();//键值对数...原创 2019-10-09 22:58:32 · 389 阅读 · 1 评论 -
Java集合之Collections工具类
Collections工具类与Arrays类类似,只不过Collections是专门操作集合的工具类,提供了很多操作集合静态方法。下面我们举例介绍Collections的主要方法及其作用。在介绍方法前先了解一下后面会用到的PrimaryStudent类,此类表示某小学生的数学和语文成绩,实现了Comparable比较器,关于比较器的内容在这篇博客。由compareTo()方法可以看出,数...原创 2019-10-23 23:43:38 · 153 阅读 · 0 评论