集合和数组的区别_java集合最全说明
一 .什么是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集合最全说明相关推荐
- php集合与数组的区别,java集合与数组的区别
数组 数组是java语言内置的数据类型,他是一个线性的序列,所有可以快速访问其他的元素,数组和其他语言不同.(推荐学习:java课程) 当你创建了一个数组时,他的容量是不变的,而且在生命周期也是不能改 ...
- java的集合和数组_Java集合和数组的区别
Java集合和数组的区别 集合和容器都是Java中的容器. 区别 数组特点:大小固定,只能存储相同数据类型的数据 集合特点:大小可动态扩展,可以存储各种类型的数据 转换 数组转换为集合: Arrays ...
- 什么是集合,集合的定义,集合与数组的区别,怎么创建一个集合?
一:什么是集合? 1.集合类存放于java.util包中. 2.集合类型主要有3种:set(集).list(列表)和map(映射). 3.集合存放的都是对象的引用,而非对象本身.所以我们称集合中的对象 ...
- ArrayList集合和数组的区别
集合和数组的区别 : 共同点:都是存储数据的容器 不同点:数组的容量是固定的,集合的容量是可变的 ArrayList的构造方法和添加方法: public ArrayList() 创建一个空的集合对象 ...
- java 数组合并 去重_Java集合与数组去重
集合去重 方法一:利用集合的contains方法,创建临时集合组装数据去重 public void listTest1(){ System.out.println("方法一"); ...
- java map与set的区别_java 集合(list,set,map)三者之间的关系和区别
原 java 集合(list,set,map)三者之间的关系和区别 一:先上一张关系图,让大家看的更明白. 备注:其中红色部分为实现,其他地方均为接口. 二:各自的特点. List 有序,可重复Arr ...
- Java中集合和数组的区别
区别: 1) 数组的长度是固定的,集合的长度可以动态扩展 2) 数组只能存储相同类型的数据,集合可以存储不同的类型的数据 public static void main(String[] ...
- java 在数组末尾添加元素_Java集合05——LinkedList
LinkedList介绍 public class LinkedList extends AbstractSequentialList implements List, Deque, Cloneabl ...
- php集合与数组的区别,php数组和链表的区别总结
PHP中数组和链表的区别 从逻辑结构来看 1..数组必须事先定义固定的长度(元素个数),不能适应数据动态地增减的情况.当数据增加时,可能超出原先定义的元素个数:当数据减少时,造成内存浪费:数组可以根据 ...
- java queue 实现类 区别_Java集合11 (Queue)
java.util.Queue接口是java.util.Collection子接口. 它代表一个有序的对象列表,就像List一样,但是它的使用有略微的区别. Queue被设计成从末端插入并且从头部删除 ...
最新文章
- https、SSL与数字证书介绍
- Ubuntu 压缩解压汇总(自己常用+持续更新)
- 如何更改CPropertySheet的背景色
- 2017中国开源年会(COSCon'17) 报名正式开启
- ElasticSearch获取多个文档Multi GET API介绍
- SAP MM ME51N 创建采购申请单据时候永远取物料主数据基本计量单位
- SWF播放器object DEMO
- HTML日期时间插件
- windows 7 RC(7106.0.090408)下载另附windows7驱动收集整合(5月31日更新)
- 2021年12月电子学会青少年软件编程(图形化)等级考试试卷(四级)答案解析
- Keras:使用预训练模型迁移学习单通道灰度图像
- 如何批量将 ppt 后缀格式的演示文稿转换为 pptx 格式
- 一英国公司打造极速家庭宽带:每秒1G
- [NOIP模拟测试30]题解
- 淘宝电商产品jQuery图片放大镜代码
- 前缀树——以Gin路由为例
- 解决swap file .swp already exists 问题
- XML的解析方法(如何解析XML)
- python去掉两边空格,Python去除字符串两端空格的方法
- pdf 卖肯锡_麦肯锡工作法