*本文是最近学习到的知识的记录以及分享,算不上原创。

*参考文献见链接。

目录

  集合框架

  Collection接口

  Map接口

  集合的工具类

这篇文章只大致回顾一下Java的总体框架。

集合框架

https://www.cnblogs.com/skywang12345/p/3308498.html

我们首先综合性地看一下Java的集合框架,如下图:

Java的集合框架中主要包括三个部分:

(1)Collection接口

(2)Map接口

(3)工具类包括:Iterator, Enumeration and Arrays, Collections

1. Collection接口

Collection接口主要包括两个子接口:List和Set。

个人认为,Collection的各个子接口或者子接口的各个实现类,它们的区别实际上是由于元素存储的数据结构不同所导致的,每种数据结构各自有自己的优缺点,适用于不同的情况。所以Collection之所以拥有众多的实现类,也是为了满足用户在不同情况下的需要,使得用户可以根据自己不同的开发需求使用不同的子接口下的实现类。

List接口特征是:

(1)有序:保证元素存取的顺序

(2)带有索引:可以通过索引对元素进行精确定位并操作,如查询、增加、删除、遍历等。

(3)允许重复:允许存储重复的元素。

List接口的实现类主要有ArrayList, LinkedList, Vector。

Set接口特征是:

(1)不允许重复:元素是唯一的。

Set接口的实现类主要有HashSet, LinkedHashSet, TreeSet。其中HashSet不能保证元素存取的顺序。

2. Map接口

首先回忆一下hashCode,每个Object对象都有一个hashCode,每个对象具有唯一的hashCode,但不同的对象可能生成相同的hashCode。所以对象与hashCode之间构成了多对一的映射关系。

Map就是一个映射接口,即key-value键值对,Map的每一个元素存储的是一个key及其对应的(多个)value。每个value与key构成多对一的映射关系。

3. 工具类

工具类中包括了Iterator, Enumeration和Arrays, Collections。

Iterator是一个用于遍历集合的工具,Enumeration也是一个用于遍历集合的工具,不过仅能在HashSet, Vector, Stack中使用。

Arrays是操作数组的工具类,Collections是操作集合的工具类。

参考文献

https://www.cnblogs.com/skywang12345/p/3308498.html

最新文章

  1. VS 远程调试之 “The visual studio remote debugger does not support this edition of windows”
  2. eclipse远程调试Hadoop
  3. PHPDocument 代码注释规范总结
  4. 浅析人脸检测之Haar分类器方法
  5. (转)Apple Push Notification Services in iOS 6 Tutorial: Part 1/2
  6. Android 开发笔记 “广播组件使用”
  7. C++里面的取整函数
  8. 大话Python正则表达式
  9. 我的第一个SpringProject——HelloWorld
  10. Xamarin 开发过的那些项目
  11. IIS配置Url重写实现http自动跳转https的重定向方法(100%解决)
  12. c++字符串string的操作
  13. 10个最佳ES6特性
  14. HTML 标记 3 —— CSS
  15. 9.12 h5日记
  16. GetNumber的实现(Python & Java & Golang)
  17. 【JQuery】JQuery属性
  18. Vi 编辑
  19. SQL Server 一些操作语句
  20. 算法笔记_023:拓扑排序(Java)

热门文章

  1. Codeforces Round #396 (Div. 2) C
  2. mongodb-安装&配置&启动
  3. python入门之实例-商品选择
  4. 移动端REM布局模板(阿里高清方案)
  5. kafka基础二
  6. JAVA-汉字转换成汉语拼音(pinyin4j-2.5.0-sources.jar)
  7. 搭建高可用mongodb集群—— 副本集
  8. 洛谷 P1474 货币系统 Money Systems
  9. andorid 向上滑动控制标题栏显示
  10. 导入maven的java web项目运行报错找不到Spring监听器