Java基础(十九)集合(1)集合中主要接口和实现类
1.Java集合框架为不同类型的集合定义了大量接口
其中,集合有两个基本接口:Collection和Map。

2.各接口的主要特征如下
(1)Collection接口:是List接口、Set接口和Queue接口的父接口,通常情况下不能被直接使用。
(2)List接口:实现了Collection接口,List接口允许存放重复的对象,按照对象的插入顺序排列
(3)Set接口:实现了Collection接口,Set接口不允许存放重复的对象,按照自身内部的排序规则排列
(4)Queue接口:实现了Collection接口,Queue接口只允许在队列的尾部添加元素,在队列的头部删除元素,并且可以统计队列中元素的个数。
(5)Map接口以键值对(Key-Value)的形式存放对象,其中键(key)对象不可以重复,值(Value)对象可以重复,按照自身内部的排序规则排列。
(6)Iterator接口:定义了访问集合中元素的第一种方式,迭代器访问,必须顺序地访问元素。
(7)RandomAccess接口:定义了访问集合中元素的第二种方式,使用一个整数索引访问,即随机访问,可以按任意顺序访问元素。
3.实现了各个接口的类

Java中集合的实现类的描述
- List
- ArrayList:可以动态增长和缩减的索引序列
- LinkedList:(实现了Queue接口)可以在任何位置进行高效地插入和删除操作的有序序列,即链表序列
- Set
- HashSet:没有重复元素的无序集(--子类LinedHashSet:可以记住元素插入次序的集)
- EnumSet:包含枚举类型值的集
- TreeSet:有序集
- Queue
- PriorityQueue:允许高效删除最小元素的集合
- ArrayDeque:用循环数组实现的双端队列
- Map
- HashMap:存储键/值关联的数据结构(--子类LinkedHashMap:可以记住键/值项添加次序的映射表)
- TreeMap:键/值有序排列的映射表
- EnumMap:键/值属于枚举类型的映射表
- WeakHashMap:其值无用武之地后可以被垃圾回收器回收的映射表
- IdentityHashMap:用“==”而不是equals比较键/值的映射表
Java基础(十九)集合(1)集合中主要接口和实现类的更多相关文章
- Java基础(二十一)集合(3)List集合
一.List接口 List集合为列表类型,列表的主要特征是以线性方式存储对象. 1.实例化List集合 List接口的常用实现类有ArrayList和LinkedList,根据实际需要可以使用两种方式 ...
- Bootstrap <基础十九>分页
Bootstrap 支持的分页特性.分页(Pagination),是一种无序列表,Bootstrap 像处理其他界面元素一样处理分页. 分页(Pagination) 下表列出了 Bootstrap 提 ...
- Java基础十二--多态是成员的特点
Java基础十二--多态是成员的特点 一.特点 1,成员变量. 编译和运行都参考等号的左边. 覆盖只发生在函数上,和变量没关系. Fu f = new Zi();System.out.println( ...
- Java基础十--接口
Java基础十--接口 一.接口的定义和实例 /* abstract class AbsDemo { abstract void show1(); abstract void show2(); } 8 ...
- “全栈2019”Java第九十九章:局部内部类与继承详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第九十五章:方法中可以定义静态局部内部类吗?
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第二十九章:数组详解(中篇)
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第十九章:关系运算符、条件运算符和三元运算符
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- 第4节:Java基础 - 必知必会(中)
第4节:Java基础 - 必知必会(中) 本小节是Java基础篇章的第二小节,主要讲述抽象类与接口的区别,注解以及反射等知识点. 一.抽象类和接口有什么区别 抽象类和接口的主要区别可以总结如下: 抽象 ...
- Java基础扫盲系列(-)—— String中的format
Java基础扫盲系列(-)-- String中的format 以前大学学习C语言时,有函数printf,能够按照格式打印输出的内容.但是工作后使用Java,也没有遇到过格式打印的需求,今天遇到项目代码 ...
随机推荐
- 学习WEBAPI第一天
目录 WebApi: 通过操作对象来实现操作标签的目的 一.DOM 中常用的操作 二.doucument对象 三.获取元素 四.注册事件 五.操作元素的属性 六.当页面加载完时,script代码已经执 ...
- Maven 梳理-自动创建Maven项目(非web)
mvn archetype:create和mvn archetype:generate create is deprecated in maven 3.0.5 and beyond,在maven3.0 ...
- 【SQL server基础】获取当前时间并固定格式
Select CONVERT(varchar(), GETDATE(), ): // Select CONVERT(varchar(), GETDATE(), ): Select CONVERT(va ...
- 【ASP.NET基础--MVC】MVC视图基础语法学习
初步接触.net MVC的视图语法,很多东西都不太熟悉,感觉跟之前的aspx以及html都有一些区别,最近看别人的代码,一边看一边研究,现把学到的东西在这里记录一下,以便日后翻阅. 第一部分:基础知识 ...
- 1 Processing入门简介
1 Processing入门简介 1.1 Before you start Processing是一个为开发面向图形的应用(visually oriented application)而生的简单易用的 ...
- Asp.NetCore源码学习[2-1]:日志
Asp.NetCore源码学习[2-1]:日志 在一个系统中,日志是不可或缺的部分.对于.net而言有许多成熟的日志框架,包括Log4Net.NLog.Serilog 等等.你可以在系统中直接使用这些 ...
- A-06 最小角回归法
目录 最小角回归法 一.举例 二.最小角回归法优缺点 2.1 优点 2.2 缺点 三.小结 更新.更全的<机器学习>的更新网站,更有python.go.数据结构与算法.爬虫.人工智能教学等 ...
- Docker 配置国内镜像
前言 当我们使用Docker pull 拉取镜像时,有时候因网络问题,导致获取镜像报错,如下 :Error response from daemon:Get https://registry-1.co ...
- 【图解】Eclipse下JRebel6.2.0热部署插件安装、破解及配置
这两天在做后台管理系统,前端框架用Bootstrap,后端用SpringMVC+Velocity.在开发过程中,经常需要对界面进行微调,调整传参等,每次更改一次java代码,就得重新部署一次,耗在各种 ...
- windows进程中的内存结构(缓冲溢出原理)
接触过编程的人都知道,高级语言都能通过变量名来访问内存中的数据.那么这些变量在内存中是如何存放的呢?程序又是如何使用这些变量的呢?下面就会对此进行深入的讨论.下文中的C语言代码如没有特别声明,默认都使 ...