博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java面试知识点(二十八)Java集合框架
阅读量:3782 次
发布时间:2019-05-22

本文共 1240 字,大约阅读时间需要 4 分钟。

一、集合框架图

在这里插入图片描述

https://images2015.cnblogs.com/blog/249993/201611/249993-20161122113410534-705560500.jpg在这里插入图片描述

二、集合框架的说明

  1. 所有集合类都位于 java.util 包下。Java 的集合类主要由两个接口派生而出:Collection 和 Map,Collection 和 Map 是 Java 集合框架的根接口,这两个接口又包含了一些子接口或实现类。
  2. Set、List 和 Map 可以看做集合的三大类:
    • List 集合是有序集合,集合中的元素可以重复,访问集合中的元素可以根据元素的索引来访问。
    • Set 集合是无序集合,集合中的元素不可以重复,访问集合中的元素只能根据元素本身来访问(也是集合里元素不允许重复的原因)。
    • Map 集合中保存 Key-value 对形式的元素,访问时只能根据每项元素的 key 来访问其 value

三、集合框架详细说明

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

(1)List 是一个 有序的队列,每一个元素都有它的索引。第一个元素的索引值是 0。List 的实现类有 LinkedList, ArrayList, Vector, Stack。

(2)Set 是一个不允许有重复元素的集合。Set 的实现类有 HastSet 和 TreeSet。 HashSet 依赖于 HashMap,它实际上是通过 HashMap 实现的;TreeSet 依赖于 TreeMap,它实际上是通过 TreeMap 实现的。

2、Map 是一个映射接口,即 key-value 键值对。Map 中的每一个元素包含 “一个 key” 和 “key 对应的 value”。AbstractMap 是个抽象类,它实现了 Map 接口中的大部分 API。而 HashMap,TreeMap,WeakHashMap 都是继承于 AbstractMap。Hashtable 虽然继承于 Dictionary,但它实现了 Map 接口。

3、接下来,再看 Iterator。它是遍历集合的工具,即我们通常通过 Iterator 迭代器来遍历集合。我们说 Collection 依赖于 Iterator,是因为 Collection 的实现类都要实现 iterator () 函数,返回一个 Iterator 对象。ListIterator 是专门为遍历 List 而存在的。

4、再看 Enumeration,它是 JDK 1.0 引入的抽象类。作用和 Iterator 一样,也是遍历集合;但是 Enumeration 的功能要比 Iterator 少。在上面的框图中, Enumeration 只能在 Hashtable, Vector, Stack 中使用。

5、最后,看 Arrays 和 Collections。它们是操作数组、集合的两个工具类。

参考:https://www.cnblogs.com/xiaoxi/p/6089984.html

你可能感兴趣的文章
GUAVA的常用方法汇总
查看>>
装饰器和门面设计模式介绍
查看>>
创建型模式——克隆模式
查看>>
JVM关闭和Hook钩子
查看>>
线程中断处理
查看>>
消息队列积压问题处理
查看>>
并行流使用注意事项
查看>>
泛型擦除机制及相关问题
查看>>
Jackson日期反序列化时区问题
查看>>
《设计模式》
查看>>
单例设计模式
查看>>
面试题集锦(一)
查看>>
Calendar类方法——编写万年历的两种方式
查看>>
File类的使用——遍历所有文件及子文件以及遍历删除
查看>>
内存流的使用——基本使用
查看>>
RandomAccessFile 类的使用——基本使用
查看>>
Properties实现类——基本使用
查看>>
结构型模式——装饰者设计模式
查看>>
线程的同步——Synchronized和ReentrantLock
查看>>
网络编程基础
查看>>