Back End

JDK8-Java集合框架

PineappleCat · 1月17日 · 2021年 459次已读

1、集合框架图

什么是集合:对象的容器,定义了对多个对象进行操作的常用方法,可实现数组的功能

说明:对于以上的框架图有如下几点说明

1、所有集合类都位于java.util.*包下。Java 的集合类主要由两个接口派生而出:Collection 和 Map,Collection 和 Map 是 Java 集合框架的根接口,这两个接口又包含了一些子接口或实现类。

java.util包下UML类图:collection.svg

2.Set、List 和 Map 可以看作集合的三大类:

  • List 集合是有序集合,集合中的元素可以重复,访问集合中的元素可以根据元素的索引来访问。
  • Set 集合是无序集合,集合中的元素不可以重复,访问集合中的元素只能根据元素本身来访问(也是集合里元素不允许重复的原因)。
  • Map 集合中保存 Key-value 对形式的元素,访问时只能根据每项元素的 key 来访问其 value。

3.集合与数组:

* 1.集合、数组都是对多个数据进行存储操作的结构,简称Java容器。
 *   说明 : 此时的存储,主要指的是内存层面的存储,不涉及到持久化的存储(. txt,.jpg,.avi,数据库中)
 * 2.1数组在存储多个数据方面的特点: .
 *   > 一旦初始化以后,其长度就确定了。
 *   >数组一旦定义好,其元素的类型也就确定了。我们也就只能操作指定类型的数据了。
 *   比如: String[] arr ; int[] arr1 ; Object[] arr2;
 * 2.2 数组在存储多个数据方面的缺点 :
 *   >一旦初始化以后,其长度就不可修改。
 *   >数组中提供的方法非常有限,对于添加、删除、插入数据等操作,非常不便,同时效率不高。
 *   >获取数组中实际元素的个数的需求,数组没有现成的属性或方法可用
 *   >数组存储数据的特点 : 有序、可重复,对于无序、不可重复的需求,不能满足。

2、总体分析

大致说明:先抓住它的主干,即 Collection 和 Map。

1、Collection 是一个接口,是高度抽象出来的集合,它包含了集合的基本操作和属性。Collection 包含了 List 和 Set 两大分支。

  • List 是一个有序、可重复的队列,“动态数组”,每一个元素都有它的索引。第一个元素的索引值是 0。List 的实现类有 LinkedList, ArrayList, Vector, Stack。
  • Set 是一个不允许有重复元素的集合。Set 的实现类有 HastSet 和 TreeSet。HashSet 依赖于 HashMap,它实际上是通过 HashMap 实现的;TreeSet 依赖于 TreeMap,它实际上是通过 TreeMap 实现的。

付费资源您未登录,请先

Click here to view the copyright notice of this site(点击此处查看本站版权声明)
0 条回应

必须 注册 为本站用户, 登录 后才可以发表评论!