数组是Java很常见的一种数据结构,能够快速地进行存取。但是当遇到下面几种情况:

①我们需要存储的数据集数目是不定的

②我们希望数据集能够自动排序

③我们需要以键值对的方式存储数据

数组就不能满足我们的需求了。这时候,我们就需要使用到集合类了。

如下图所示,该图就是Java集合类的关系图谱。其中实现Collection接口的Queue及其子接口、实现类没有列出来。LinkedList是实现了Queue接口的。

集合主要分为两大类:实现Collection接口的和实现Map接口的,如下表所示,列出了最长见的集合类。

各个集合类的特点如下表所示。

衍生问题:

1.ArrayList、LinkedList、Vector的区别?

2.HashMap、Hashtable、ConcurrentHashMap的区别?

3.HashMap、TreeMap、LinedHashMap的区别?

4.ConcurrentHashMap如何实现?

Java基础知识——Java集合详解相关推荐

  1. java基础与案例开发详解 pdf下载_Java基础与案例开发详解(张孝祥) pdf_IT教程网...

    资源名称:Java基础与案例开发详解(张孝祥) pdf 第1.2和3章介绍Java环境的安装配置,Java程序的开发过程和Java语言的基础语法. 第4章介绍数组和常用算法的相关知识. 第5章和6章介 ...

  2. 【Java基础】HashMap原理详解

    [Java基础]HashMap原理详解 HashMap的实现 1. 数组 2.线性链表 3.红黑树 3.1概述 3.2性质 4.HashMap扩容死锁 5. BATJ一线大厂技术栈 HashMap的实 ...

  3. 计算机在线问,计算机基础知识在线测试问题详解

    计算机基础知识在线测试问题详解 (75页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 实用文档题目1of100以下不属于计算机外部设备 ...

  4. Java基础知识与集合部分面试题整理

    JAVA基础知识 一.JDK与JRE 1.JDK和JRE的区别 可从面向对象.主要作用和组成部分三方面对比.如下图所示: 2.JDK – Java Development Kit 1). 主要面向开发 ...

  5. Java基础看jvm,JAVA基础知识|java虚拟机(JVM)

    一.JVM简介 java语言是跨平台的,兼容各种操作系统.实现跨平台的基石就是虚拟机(JVM),虚拟机不是跨平台的,所以不同的操作系统需要安装不同的jdk版本(jre=jvm+类库:jdk=jre+开 ...

  6. java基础_题库详解

    删除线格式 # 1 JDK和JRE有什么区别? JRE:Java Runtime Environment( java 运行时环境).即java程序的运行时环境,包含了 java 虚拟机,java基础类 ...

  7. 【Sofice小司笔记】1 Java,包含java基础知识,集合,面向对象,反射,泛型等

    JavaSE:标准版(桌面程序,控制台) JavaME:嵌入式开发(手机) JavaEE:E企业级开发(web,服务器) JDK(Java Development Kit):整个java开发工具 JR ...

  8. Java基础-GUI入门-AWT详解

    AWT 2.1.AWT介绍 其包含了很多的类和接口. 元素:窗口,按钮,文本框. Java.awt: 2.2.组件和容器 1.Frame 代码: package com.edwin.lession01 ...

  9. Java基础总结之Thymeleaf详解

    一.Thymeleaf语法 1.1 变量表达式${-} 1.2 选择变量表达式*{-} 1.3 消息表达式 #{-} 1.4 链接表达式 @{-} 1.5 片段表达式 ~{-} 二.基本使用 2.1 ...

  10. java定义一个eat方法_小黄鸭系列java基础知识 | java中的方法

    前言 今天我们要探讨的问题,是java基础语法的最后一个问题,也就是java中的方法,今天主要从以下几个方面来介绍: 方法是什么(定义) 方法的分类 方法的调用 应该说,学完今天的知识,你至少应该看懂 ...

最新文章

  1. linux下将目录授权给其他用户的步骤
  2. ApplicationEventPublisherAware--待完善
  3. opencv for linux mac,opencv for Java在MacOS 10.10安装
  4. 商品审核网页界面_商品模块数据库表解析(二)
  5. ASCII码与字符串的相互转换
  6. 信息学奥赛一本通(2062:【例1.3】电影票)
  7. python函数注解
  8. ApacheCN 交流社区一周热点 2019.4 wk1
  9. 官方晒中兴AXON 30 Pro真机亮屏谍照:第二代屏下摄像头技术提升明显
  10. [转]Groovy和Grails简介
  11. C#判断访问入口是移动端还是PC
  12. 【运动学】基于matlab速度+加速度数值计算(匀速圆周运动) 【含Matlab源码 975期】
  13. 大数据Hadoop原理:大数据Hadoop技术原理简介
  14. pvr文件转成png和plist
  15. javashop技术培训总结,架构介绍,Eop核心机制
  16. photo2cartoon环境搭建-真人头像卡通画-写实
  17. 地震数据SEGY格式介绍及其查看分析(附示例地震数据)
  18. 什么是“托管代码”?
  19. 软考中级软件评测师备考详细资料
  20. JavaScript循环语句for,while,与break,continue配合案例详解

热门文章

  1. querybuilder 排序_elasticsearch的匹配与排序问题
  2. 软件配置管理(二)配置管理角色与过程
  3. sdram 时钟相位_零基础学FPGA (二十五)必会! 从静态时序分析到SDRAM时序收敛(下篇)...
  4. 她花了8个月让骗子爱上自己,然后把骗子引到警察局......
  5. 每个女孩子起床后做的第一件事......
  6. 一个常见的物理现象,直今还是未解之谜!
  7. 每日一笑 | 哪个男人到底是谁?!
  8. 掌握神经网络模型的快捷方式
  9. 5月份Github上最热门的数据科学和机器学习项目
  10. 鉴别一个人是否 js 入门的标准竟然是?!