首先呢,java分为单列集合和双列集合,单列集合的顶级接口是Collection,双列集合的顶级接口是Map。

一、Collection的子接口有两个List和Set:

1.list接口的特点:元素可重复,有序(存取顺序)。

list接口的实现类:

ArrayList:底层实现是数组,查询快,增删慢,线程不安全,效率高;

Vector:底层实现是数组,查询快,增删慢,线程安全,效率低;【淘汰】

LinkedList:底层实现是链表,增删快,查询慢,线程不安全,效率高;

2.Set 接口的特点:元素唯一,不可重复,无序。

Set 接口实现类:

HashSet:底层实现 hashMap,数组+链表实现,不允许元素重复,无序。

TreeSet:底层实现红黑二叉树,实现元素排序

目录

一、Collection的子接口有两个List和Set:

二、Map 接口的特点:key-value 键值对形式存储数据


二、Map 接口的特点:key-value 键值对形式存储数据

Map 接口实现类:

HashMap:底层数组+链表实现,线程不安全效率高;

TreeMap:底层红黑二叉树实现,可实现元素的排序;

LinkedHashMap:底层 hashmap+linkedList 实现,通过 hashmap 实现 key-value 键值对存储,通过链表实现元素有 序

java中的集合有那些?相关推荐

  1. java去重复的集合_如何去除Java中List集合中的重复数据

    1.循环list中的所有元素然后删除重复 public class duplicatRemoval { public static List removeDuplicate(List list){ f ...

  2. Java中Set集合是如何实现添加元素保证不重复的?

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | 公众号「武培轩」 Java中Set集合是如何实 ...

  3. 万字长文深入理解java中的集合-附PDF下载

    文章目录 1. 前言 2. List 2.1 fail-safe fail-fast知多少 2.1.1 Fail-fast Iterator 2.1.2 Fail-fast 的原理 2.1.3 Fai ...

  4. (转)java中对集合对象list的几种循环访问总结

    Java集合的Stack.Queue.Map的遍历 在集合操作中,常常离不开对集合的遍历,对集合遍历一般来说一个foreach就搞定了,但是,对于Stack.Queue.Map类型的遍历,还是有一些讲 ...

  5. java中的集合框架_JAVA中的集合框架(上)List

    第一节 JAVA中的集合框架概述 集合的概念,现实生活中:很多事物凑在一起就是一个集合:数学中的集合:具有相同属性事物的总体:JAVA中的集合:是一种工具类,就像是容器,储存任意数量的具有共同属性的对 ...

  6. java中各种集合的用法和比较

    一,java中各种集合的关系图 Collection       接口的接口     对象的集合  ├ List           子接口         按进入先后有序保存   可重复  │├ L ...

  7. java中的集合_Java 集合介绍,常用集合类

    JAVA 集合 在处理数据的过程中经常会需要一个容器来存储某一类型的数据,Java 中的数组就是这样一种容器.但 Java 中的数组有其局限性,定义后的数组长度不可变,超出数组长度后就不能再存放数据了 ...

  8. java 中的集合_JAVA中的集合

    JAVA中集合,是java中的基础概念,今天接着跟讲课准备课件的机会,重新整理一下关于JAVA中的集合的概念. 集合的概念 java中的集合类是用来存放对象的 集合相当于一个容器,里面包容着一组对象- ...

  9. Java中List集合的三种遍历方式(全网最详)

    Map集合:链接: Map集合的五种遍历方式及Treemap方法 Set集合:链接: Java中遍历Set集合的三种方法 TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法 ...

  10. 10.JAVA中的集合(数据结构)

    Java中的集合 包含以下结构: 数组-线性表 链表 栈 队列 散列表 二叉树 映射关系(key-value) List集合  特点:[有序.重复] [线性表--数组] ArrayList 定义 线程 ...

最新文章

  1. 关于Hystrix超时机制和线程状态的测试观察和个人理解
  2. SAP HUM 使用HU02去Unpack一个HU
  3. python入门学习基础数据结构与语法
  4. CV之IC:计算机视觉之图像分类(Image Classification)方向的简介、使用方法、案例应用之详细攻略
  5. c++学习笔记之指针
  6. flowable背压 取消_使用Flowable.generate()生成可感知背压的流– RxJava常见问题解答...
  7. 最全的B端产品经理干货知识(3)
  8. 基于JAVA+SpringMVC+Mybatis+MYSQL的网上商城系统
  9. [Java] 蓝桥杯ALGO-62 算法训练 平方计算
  10. python执行速度太慢为什么还_为什么你写的Python运行的那么慢呢?
  11. BZOJ1047B Cover Points
  12. 【UX/UI原型模板】中国地图元件库操作说明(省份+直辖市+自治区+行政特区详细地图)
  13. 随笔 M330华为盒子 4k播放
  14. 常见的主机运维面板有哪些?主机面板全面汇总(国内外)
  15. oracle大写数字转小写,求助oracle小写金额转换大写金额的函数
  16. 2018tfe世界计算机专业排名,2018年TFE TIMES美国研究生计算机科学专业排名
  17. 百度指数 爬虫 其实主要是破解
  18. J2me xmlReader的轻量级实现
  19. LFW人脸数据集相关
  20. 海量数据处理方法总结 常见大数据题目汇总

热门文章

  1. [bzoj2055]80人环游世界 上下界费用流
  2. Mybatis中sql的各种写法,项目中的。存储过程写法,创建索引写法
  3. 运动手表演示-支持 H5,Android,微信小程序
  4. 对固定长度序列进行不同长度下的FFT变换的区别
  5. 用pppoe封装的ppp帧头部不包含标志_一文读懂计算机底层网络原理,包括TCP、UDP、header,什么是包、帧、段等关键问题...
  6. caffe的docker安装
  7. 手机号码检测开通微信软件的使用案例(二)
  8. 时间不一定能证明许多东西,但一定会让你看透许多东西。
  9. 关于开关插座的一些知识
  10. 泛型类——Java泛型(一)