转载

JAVA集合概述

近段时间在学习java集合,原本也没想着写笔记或者博客的。但是慢慢看下去之后发现java集合的内容繁多,但是各集合之间具有很大的共通性。所以就动了写博客的念头。

在安卓开发的时候已经有在用集合了,具体是用ArrayList向上转型到list对象。 

我觉得集合比数组方便的地方主要有4个:

  • 所有操作都是基于对象进行,符合java的核心思想。
  • 不用担心数据项的增加导致的数组溢出的情况。
  • 在插入、删除等等操作的时间开销较少。
  • Map接口的子接口以及实现类可以存放具有映射关系的数据。

缺点也不是没有,可能是我学的不够深,暂时只发现了一个:Collection接口的子接口以及实现类大部分都是基于一个长度为16的数组实现,所以当插入的数据项少于16时可能会造成资源的浪费。

java集合主要由两个接口派生而来:Collection以及Map。

下面是两个接口的概述图

JAVA集合概述

图的来源为李刚老师的《疯狂java讲义》,如有侵权请联系删除。

其中Collection接口的Vector实现类是不建议使用的,一是年代有点久远,二是已经有更先进更好用的ArrayList可以替换使用。

下面是Collection、Map接口以及各实现类、子接口的用法(持续更新)。

Collection接口: https://blog.csdn.net/cartoon...

Iterator接口: https://blog.csdn.net/cartoon...

原文  https://segmentfault.com/a/1190000019071471
正文到此结束
Loading...