一.集合框架

1.字面意思:
把具有相同性质的一类东西,汇聚成一个整体,就可以称为集合。

2.集合框架整体内容划分:
表示和操作集合而规定的一种统一的标准的体系结构。
任何集合框架都包含三大块内容:对外的接口、接口的实现和对集合运算的算法。

接口:即表示集合的抽象数据类型。

实现:也就是集合框架中接口的具体实现。

算法:在一个实现了某个集合框架中的接口的对象身上完成某种有用的计算的方法,例如查找、排序等。

二.集合概念

1.来源:
若非程序运行,程序开发阶段,我们根本不知道到底需要多少个数量的对象,甚至不知道它的准确类型,要求能在任何时候,任何地点创建任意数量的对象,数组只能放统一类型的数据,集合便应运而生了

2.存储
Java集合类存放在java.util包中,是一个用来存放对象的容器(数据对象引用的容器)。

1.集合只能存放对象。如果你存入一个int型数据放入集合中,它是会自动转换成Integer类后存入的,Java中每一种基本数据类型都有对应的引用类型。

2.集合存放的都是对象的引用,而非对象本身。所以我们称集合中的对象就是集合中对象的引用。对象本身还是放在堆内存中。

3.集合可以存放不同类型,不限数量的数据类型。

3.具体的结构?

3.1 Iterator迭代器: java集合的顶层接口,用于遍历集合中的元素,主要有三个方法:

1.Object next():返回迭代器刚越过的元素的引用,返回值是Object,需 要强制转换成自己需要的类型。
2.boolean hasNext():判断容器内是否还有可供访问的元素。
3.void remove():删除迭代器刚越过的元素。

iterator有一个子接口ListIterator,它在原有的基础上又添加了三种方法,分别是add(),previous(),hasPrevious()

3.2 Collection接口:规定了一个集合有哪些操作
接口继承的是类Iterable,Iterable类中封装了iterator接口,只要实现了iterator接口就可以使用iterator迭代器。

Collection与Collections的区别
Collection是一个接口,它是Set、List等容器的父接口;Collections是个一个工具类,提供了一系列的静态方法来辅助容器操作,这些方法包括对容器的搜索、排序、线程安全化等等。

3.3 Map集合:Map用于保存具有映射关系的数据,Map里保存着两组数据:key和value,它们都可以使任何引用类型的数据,但key不能重复。所以通过指定的key就可以取出对应的value

具体分类:

特点:

4.与数组的区别:
1)数组长度不可变化而且无法保存具有映射关系的数据;集合类用于保存数量不确定的数据,以及保存具有映射关系的数据。

2)数组元素既可以是基本类型的值,也可以是对象;集合只能保存对象。

注:部分图片来自https://blog.csdn.net/zhangqunshuai/article/details/80660974

集合--1.集合的概念和结构相关推荐

  1. 集合(一)集合的引入及其概念、List、ArrayList、LinkedList

    一.集合的引入及其概念 1.集合是用来解决数组相关缺点诞生的 数组固定长度,无法扩容 数组不是一个类没有方法,程序员只能自己写增删查改的方法 2.集合是什么? 集合只能存放对象 集合是可变长度的,不限 ...

  2. EF架构~单表一对多集合的插入(树型结构)

    单表一对多关系很常见,它是一种树形结构,如系统菜单表,部门表,分类表,这些都可以做成单表一对多关系,而这些表做成一对多关系后,如果通过EntityFramework进行插入操作时,会很方便,EF会自动 ...

  3. 集合 (一) ----- 集合的基本概念与Collection集合详解

    相关文章: <集合 (一) ----- 集合的基本概念与Collection集合详解> <集合 (二) ----- Map集合详解> 文章目录 集合的基本概念 一.集合的分类 ...

  4. 14 Java集合(集合框架+泛型+ArrayList类+LinkedList类+Vector类+HashSet类等)

    本篇主要是集合框架基础和List集合,Map集合等等后续更 集合 14.1 集合框架 14.1.1 概念 14.1.2 集合架构 14.2 Collection接口 14.2.1 常用方法 14.3 ...

  5. 数据结构——数和二叉树的概念和结构

    目录 一.数的概念及结构 1.1 树的概念 1.2 树的相关概念 1.3 树的表示 1.4 树的应用 二.二叉树概念及结构 2.1 概念 2.2 特殊的二叉树 2.3 二叉树的性质 2.4 二叉树的存 ...

  6. 【数据结构基础/接口函数编写】二叉树第一弹之树和堆的概念和结构、基础堆接口函数的实现(编写思路加逻辑分析加代码实操,一应俱全的汇总)

    文章目录 树的概念及结构 树的概念 树的相关概念 树的表示 二叉树的概念及结构 二叉树的概念 特殊的二叉树: 二叉树的存储结构 二叉树的性质 顺序储存 链式储存 堆 堆的概念及结构 堆的实现 头文件 ...

  7. 【数据结构之二叉树】——二叉树的概念及结构,特殊的二叉树和二叉树性质

    文章目录 一.二叉树的概念及结构 1.概念 2.现实中的二叉树 3. 特殊的二叉树: 3.二叉树的性质 二.二叉树练习题 总结 一.二叉树的概念及结构 1.概念 一棵二叉树是结点的一个有限集合,该集合 ...

  8. Java学习笔记17:Java_Set集合_TreeSet集合_二叉树_HashSet集合

    文章目录 1.Set集合 1.1Set集合概述和特点[应用] 1.2Set集合的使用[应用] 2.TreeSet集合 2.1TreeSet集合概述和特点[应用] 2.2TreeSet集合基本使用[应用 ...

  9. 数据结构之树的概念以及结构

    数据结构之树的概念以及结构 1.树的概念 树是一种非线性的数据结构,是由n(n>=0)有限节点的组成的一个具有线性关系的集合. 叫树的原因是因为它看起来像是一颗倒挂的树,只不过是根朝上,叶朝下 ...

  10. 数据结构——树及二叉树的概念及结构的了解

    文章目录 一.树概念及结构? 1.树的概念 2.树的相关概念 3.树的表示 4. 树在实际中的运用 二.叉树的概念及结构 1.概念 2.现实中的二叉树 3.特殊的二叉树 4.二叉树的性质 5.二叉树的 ...

最新文章

  1. java获取ajax上传的文件,Java使用Ajax异步上传文件
  2. non-local神经网络:通过非局部操作解决深度神经网络核心问题
  3. Akka并发编程——第六节:Actor模型(五)
  4. SAP Spartacus checkout页面的入口逻辑
  5. java中的hashset_Java中的HashSet
  6. Scrapy中的item是什么
  7. J2EE项目架构最佳实践
  8. python 弧度与角度互转
  9. 况客:Campisi债券业绩归因模型
  10. 计算机应用与医学信息基础知识,第一篇医学信息基础知识.PDF
  11. 计算机无法创建新文件夹,使用win10系统时,发现无法新建文件夹怎么办,学会这招即可修复...
  12. lodop指定打印机打印_lodop和c-lodop临时默认打印机同一任务测试
  13. Discuz论坛如何使用SendCloud?
  14. Visual Studio 2013如何显示代码行数
  15. android 手电筒开关,Android 系统开关,wifi、手电筒等的开关
  16. 4、基本命令-系统管理
  17. java andequal_Java equals 和 == 完全解析
  18. SpringMVC(8)——格式化转换器Formatter
  19. 检查Logic Java 课程最近一次考试。如果全部没有通过考试(60分及格),则认为本次考试偏难,计算该次考试平均分加5分。
  20. ppt怎么压缩,ppt压缩教程

热门文章

  1. 论文阅读“Automatic detection of hardhats worn by construction personnel”
  2. 深度学习数据集图片resize
  3. 培训班出来的程序员怎么就不行了?
  4. 大数据基础知识之什么是服务器什么是集群
  5. 支付宝小程序访问浙里办应用,提示页面访问受限,IOS无法访问
  6. 一图看懂RTB广告竞价原理,原来这就是实时竞价
  7. sql server 日期转换为英文格式
  8. 微信小程序修改data,页面数据实时更新
  9. ue4 启用ui_如何实现语音的AI启用ui设计原则
  10. Thunderbird 邮件签名三个实现方式