一 .什么是java集合?集合与数组有什么区别?下面我们来详细讨论一下

1.一般地,我们把研究对象统称为元素;把一些元素组成的总体叫做集合.

2. 数组,是有序的元素序列,用于储存多个相同类型数据的集合,

数组是java语言内置的数据类型,它是一个线性的序列,所有可以快速访问其他的元素,数组和其他语言不同,当你创建了一个数组时,他的容量是不变的,而且在生命周期也是不能改变的,还有JAVA数组会做边界检查,如果发现有越界现象,会报RuntimeException异常错误,当然检查边界会以效率为代价。

二 .数组和集合的区别

集合与数组区别

1、数组声明了它容纳的元素的类型,而集合不声明。

2、数组是静态的,一个数组实例具有固定的大小,一旦创建了就无法改变容量了。而集合是可以动态扩展容量,可以根据需要动态改变大小,集合提供更多的成员方法,能满足更多的需求。

3、数组的存放的类型只能是一种(基本类型/引用类型),集合存放的类型可以不是一种(不加泛型时添加的类型是Object)。

4、数组是java语言中内置的数据类型,是线性排列的,执行效率或者类型检查都是最快的。

三 . java集合框架图

java集合框架图

从上面的图片可以看出java集合主要分为两种类型的容器

第一种:集合(Conllection),用来存储一个元素集合

第二种:图(Map) ,用来存储键/值对映射.

其中,

Collection说明

Collection 接口对象的集合(单列集合)

====> List 接口:有序的,可重复

=======> LinkedList 接口实现类, 链表, 插入删除速度快, 没有同步, 线程不安全

=======> ArrayList 接口实现类, 数组, 访问查询快, 没有同步, 线程不安全

=======> Vector 接口实现类 ,数组,同步, 线程安全 (类可以实现可增长的对象数组。)

===========> Stack 是Vector类的实现类 (后进先出 的对象堆栈)

====>Set 接口: 仅接收一次,不可重复,并做内部排序

├—————-└HashSet 使用hash表(数组)存储元素

│————————└ LinkedHashSet 链表维护元素的插入次序

└ —————-TreeSet 底层实现为二叉树,元素排好序

Map 接口 键值对的集合 (双列集合)

├———Hashtable 接口实现类, 同步, 线程安全

├———HashMap 接口实现类 ,没有同步, 线程不安全-

│—————–├ LinkedHashMap 双向链表和哈希表实现

│—————–└ WeakHashMap

├ ——–TreeMap 红黑树对所有的key进行排序

└———IdentifyHashMap

四.List接口说明

Listj接口说明

五. Set的说明

set接口的说明

六.Queue接口说明

Queue接口说明

七.Map

Map接口说明

集合和数组的区别_java集合最全说明相关推荐

  1. php集合与数组的区别,java集合与数组的区别

    数组 数组是java语言内置的数据类型,他是一个线性的序列,所有可以快速访问其他的元素,数组和其他语言不同.(推荐学习:java课程) 当你创建了一个数组时,他的容量是不变的,而且在生命周期也是不能改 ...

  2. java的集合和数组_Java集合和数组的区别

    Java集合和数组的区别 集合和容器都是Java中的容器. 区别 数组特点:大小固定,只能存储相同数据类型的数据 集合特点:大小可动态扩展,可以存储各种类型的数据 转换 数组转换为集合: Arrays ...

  3. 什么是集合,集合的定义,集合与数组的区别,怎么创建一个集合?

    一:什么是集合? 1.集合类存放于java.util包中. 2.集合类型主要有3种:set(集).list(列表)和map(映射). 3.集合存放的都是对象的引用,而非对象本身.所以我们称集合中的对象 ...

  4. ArrayList集合和数组的区别

    集合和数组的区别 : 共同点:都是存储数据的容器 不同点:数组的容量是固定的,集合的容量是可变的 ArrayList的构造方法和添加方法: public ArrayList() 创建一个空的集合对象 ...

  5. java 数组合并 去重_Java集合与数组去重

    集合去重 方法一:利用集合的contains方法,创建临时集合组装数据去重 public void listTest1(){ System.out.println("方法一"); ...

  6. java map与set的区别_java 集合(list,set,map)三者之间的关系和区别

    原 java 集合(list,set,map)三者之间的关系和区别 一:先上一张关系图,让大家看的更明白. 备注:其中红色部分为实现,其他地方均为接口. 二:各自的特点. List 有序,可重复Arr ...

  7. Java中集合和数组的区别

    区别: 1)    数组的长度是固定的,集合的长度可以动态扩展 2)    数组只能存储相同类型的数据,集合可以存储不同的类型的数据 public static void main(String[] ...

  8. java 在数组末尾添加元素_Java集合05——LinkedList

    LinkedList介绍 public class LinkedList extends AbstractSequentialList implements List, Deque, Cloneabl ...

  9. php集合与数组的区别,php数组和链表的区别总结

    PHP中数组和链表的区别 从逻辑结构来看 1..数组必须事先定义固定的长度(元素个数),不能适应数据动态地增减的情况.当数据增加时,可能超出原先定义的元素个数:当数据减少时,造成内存浪费:数组可以根据 ...

  10. java queue 实现类 区别_Java集合11 (Queue)

    java.util.Queue接口是java.util.Collection子接口. 它代表一个有序的对象列表,就像List一样,但是它的使用有略微的区别. Queue被设计成从末端插入并且从头部删除 ...

最新文章

  1. https、SSL与数字证书介绍
  2. Ubuntu 压缩解压汇总(自己常用+持续更新)
  3. 如何更改CPropertySheet的背景色
  4. 2017中国开源年会(COSCon'17) 报名正式开启
  5. ElasticSearch获取多个文档Multi GET API介绍
  6. SAP MM ME51N 创建采购申请单据时候永远取物料主数据基本计量单位
  7. SWF播放器object DEMO
  8. HTML日期时间插件
  9. windows 7 RC(7106.0.090408)下载另附windows7驱动收集整合(5月31日更新)
  10. 2021年12月电子学会青少年软件编程(图形化)等级考试试卷(四级)答案解析
  11. Keras:使用预训练模型迁移学习单通道灰度图像
  12. 如何批量将 ppt 后缀格式的演示文稿转换为 pptx 格式
  13. 一英国公司打造极速家庭宽带:每秒1G
  14. [NOIP模拟测试30]题解
  15. 淘宝电商产品jQuery图片放大镜代码
  16. 前缀树——以Gin路由为例
  17. 解决swap file .swp already exists 问题
  18. XML的解析方法(如何解析XML)
  19. python去掉两边空格,Python去除字符串两端空格的方法
  20. pdf 卖肯锡_麦肯锡工作法

热门文章

  1. Vue的父子组件通信(转载)
  2. json-lib javabean转换为首字母大写的json串
  3. HCIE-Security Day29:IPSec:实验(四)总部与分支机构之间建立IPSec PN(采用策略模板方式,总部采用固定IP)
  4. axios 取消请求_封装 axios 取消重复请求
  5. 厂商为什么喜欢使用堆叠?
  6. 防火墙透明模式下虚拟系统配置实例
  7. OSPFv3中LSA详解(九)——Prefix三元组详解
  8. 动态路由之OSPF综合实验
  9. shell脚本练习题
  10. Android调试神器stetho使用详解和改造