集合

单列集合 以及双列集合 二十六.集合框架 概念:集合是一个容器,数组也是一个容器,但是呢数组的大小是固定的、类型是唯一的因此在某些需求上有限制 集合特点: 1、容器大小可变 2、可以存储多种数据类型的值【只能是引用数据类型,对基本数据类型而言存储的是其包装类】 3.根据集合的存储方式不同,将集合划分两大类:一类是单列集合,另一类是双列集合 关键词:Collection(单列集合)、Map(双列集合) 一.Collection 单列集合 List集合是有序集合集合中的元素可以重复,访问集合中的元素可以根据元素的索引来访问 阅读详情

集合的体系:
Collection接口:list接口(arraylist、linkedlist、Vector)
Set接口(HashSet、TreeSet、LinkedSet)
Queue接口
Map接口:HashMap、TreeMap、LinkedMap

1.Collerction
(1)collection接口继承Iterable接口
(2)常用方法:size()返回项数、isEmpty()判断是否为空、add()添加、remove(obj)删除、Iterator()遍历
(3)collerction 的remove()和iterable的remove()的区别?
性能方面:collerction 的remove()是单链表查询删除,在集合中一个个遍历寻找该对象,效率比较低。iterable的remove()结合next()使用,效率较高。
容错方面:在使用iterable遍历时,如果使用collerction的remove()会报异常,而iterable的remove()则不会。

2.List接口
特点:有序,元素可重复,可以插入多个null元素
ArrayList 和LinedList的区别?
ArrayList是数组结构,查询快
linkedList是链表结构,增删快

3.Set接口
特点:无序,元素不可重复,只允许一个null元素
HashSet 、TreeSet、LinkedHashSet的区别?
需要速度快的集合用HashSet
需要集合有排序的用TreeSet
需要有顺序插入得用LinkedHashSet

4.Queue接口(队列)
特点:先进先出

Map接口
特点:以键值对(K/V)的方式存储对象,键不能重复,值可以重复,无序
HashMap、TreeMap、LinkedashMap的区别?
在Map中插入、删除、定位用HashMap
需要集合有排序的用TreeMap
需要有顺序插入的用LinkedHashMap

Array 和ArrayList的区别?
长度:array长度是不可变的,ArrayList的长度是可变的
存储的类型:array只能存储相同数据类型的数据,ArrayList可以存储不同数据类型的数据

MyBatis 集合集合嵌套查询 集合 <collection property="posts" ofType="domain.blog.Post"> <id property="id" column="post_id"/> <result property="subject" column="post_subject"/> 阅读详情

相关推荐

ATE测试的未来:自动化与智能化的技术演进

本文探讨了自动测试设备(ATE)在半导体产业中的技术演进,重点关注自动化与智能化的发展趋势。随着芯片制程的不断进步,ATE面临测试复杂度激增和成本压力等挑战。文章分析了AI技术在测试优化中的应用,如自适应测试和缺陷预测,以及模块化架构和端到端测试生态系统的创新。这些技术突破显著提升了测试效率和设备利用率,为半导体测试的未来发展指明了方向。

weixin_29232507的博客 579

超详细LinkedHashMap解析

文章目录LinkedHashMap概述LinkedHashMap原理主要元素构造函数维护链表的操作afterNodeRemovalafterNodeAccessafterNodeInsertionget操作put操作HashMap#putVal(...)Remove操作HashMap#removeNode(...)LinkedHashMap用作实现LRU总结 LinkedHashMap概述 pub...

qq_40050586的博客 5万+

深入AOSP构建系统:从BUILD_FINGERPRINT的生成逻辑,看如何定制你的Android设备标识

本文深入解析AOSP构建系统中的设备指纹生成机制,详细介绍了BUILD_FINGERPRINT的生成逻辑及其在Android设备中的关键作用。通过分析多个指纹属性的区别与联系,以及如何定制设备标识,帮助开发者更好地理解和掌握Android系统构建过程。

weixin_27017211的博客 183

Java集合------LinkedHashMap底层原理

Java集合------LinkedHashMap底层原理 前言 在集合中,除了常用的HashMap,还有今天我们要说的LinkedHashMap.为什么会有LinkedHashMap这个集合呢?因为我们在迭代HashMap的时候是无序的,我们希望有一个有序的map来方便我们的使用,这个时候就有了LinkedHashMap. 正文 首先,LinkedHashMap通过维护一个运行于所有条目的双向链...

剑小纯的夜话白鹭 2万+

Map 综述(二):彻头彻尾理解 LinkedHashMap

HashMap和双向链表合二为一即是LinkedHashMap。所谓LinkedHashMap,其落脚点在HashMap,因此更准确地说,它是一个将所有Entry节点链入一个双向链表的HashMap。由于LinkedHashMap是HashMap的子类,所以LinkedHashMap会拥有HashMap的所有特性。此外,LinkedHashMap可以很好的支持LRU算法。

Rico's Blogs 19万+

clear方法清空list集合(或map或其他集合)中的所有数据及其好处

背景 代码实现 clear方法源码解读 好处分析 A little bit of progress every dayCome on 背景 因为项目需要重置初始状态,这时候需要清空原有的部分集合数据。这里我以list集合为例说明一下,其他的map集合都是可以相通的。 代码实现 private List<String> list = new ArrayL...

活在当下!输出快乐! 5万+

Java集合 之 单列集合

java的单列集合,看这一篇就够了

qq_73698057的博客 2794

集合 —— 集合集合运算

【概述】 集合,是集合论中主要研究对象,是指具有某种特定性质的具体的或抽象的对象汇总而成的集体,其中,构成集合的这些对象则称为该集合的元素。 集合中元素的数目称为集合的基数,集合 A 的基数记作:card(A),当其为有限大时,集合 A 称为有限集,反之则为无限集,简单来说,含有有限个元素的集合叫做有限集,含无限个元素的集合叫做无限集。 一个集合具有三个特性:确定性、互异性、无序性。其中,确...

Alex_McAvoy的博客 7364

集合论】集合概念与关系 ( 集合表示 | 数集合 | 集合关系 | 包含 | 相等 | 集合关系性质 )

一、 集合论体系 、 二、 集合表示 、 三、 数集合 、 三、 集合关系 、 1、 包含关系 、 2、 相等关系 、 3、 集合间包含关系性质

让 学习 成为一种 习惯 ( 韩曙亮 の 技术博客 ) 1万+

集合框架——Map集合

Map集合概述interface Map<K,V> K:键的类型;V:值的类型Map集合的特点双列集合,一个键对应一个值键不可以重复,值可以重复Map集合的基本使用//创建集合对象​//V put(K key, V value) 将指定的值与该映射中的指定键相关联map.put("wedu001","林青霞");map.put("wedu002","张曼玉");map.put("wedu003","王祖贤");map.put("wedu003","柳岩");​。

weixin_64681117的博客 2206

集合论_集合代数

文章目录集合代数解决问题创建过程组成部分基本概念集合定义集合表示集合基数集合关系空集全集相等关系包含关系子集和真子集证明集合相等n 元集的子集幂集定理集合运算集合运算定律可数集合与不可数集合等式可数集合不可数集合 集合代数 解决问题 ​ 在现代数学中,集合论是数学的基础,数学是其它学科的基础,集合论成为了基础的基础,可见其重要性 ​ 在离散数学中,我们需要用集合表达各类离散量和离散量之间的关系 创...

nmgyangguangyuan的博客 4822

各种集合集合

文章目录数组千千万,集合是真理数组与集合的扩容集合的分类 数组千千万,集合是真理   我们在代码中常见的数据保存形式一般就是两种—>数组与集合;数组和集合的最大的区别在于查询和扩展,一般情况下,在数据确定的情况下,我们采用数组的形式会更便于我们查询,而在数据长度不确定的情况下,我相对更推荐集合。 数组与集合的扩容   数组的扩容 我们都知道的是数组在一旦确定下来的时候我们是无法对数组的长度进行改变的,所以对数组进行扩容就只能通过创建一个新的更长的数组来将原来的数组长度给复制过去才可以。这一段我在数组

qq_43325476的博客 856

Java里的集合:单列集合+双列集合

集合的一些知识点总结,适合复习

weixin_60470460的博客 1911

Java集合类--List集合,Set集合,Map集合

集合类类似于数组,与数组不同的是,数组的长度是固定的,集合的长度是可变的;数组用来存放基本类型数据,集合用来存放对象的引用。

qq_40132294的博客 3113

【数学分析】集合 ① ( 集合概念 | 集合表示 | 常用的数集合 | 集合的表示 )

一、集合概念、 二、集合表示、 三、常用的数集合、 四、集合的表示

让 学习 成为一种 习惯 ( 韩曙亮 の 技术博客 ) 1万+

单列集合 双列集合

扩容: 当数组中元素的个数>threshold 进行扩容 扩容为原来的2倍, loadFactor 加载因子 0.75 ,threshold = 数组的长度*loadFactor=16*0.75 =12 第一次长度为16的数组所指定的值threshold 也扩容为原来的2倍。jdk8:在创建集合的时候 创建长度为0的数组 赋值给elementData,在第一次添加元素的时,将新产生的长度为10的数组赋值给elementData,当添加的元素超过数组的长度时,进行扩容为原来的1.5倍。

2402_83268176的博客 1557

集合论知识总结——集合及其运算

集合论知识总结

m0_62249876的博客 9511

Java集合进阶——单列集合

数组+链表+红黑树⑴引用构造方法时,方法底层会创建一个默认长度为16,加载因子为0.75的数组⑵添加元素时,方法会根据元素的哈希值跟数组的长度计算出应存入的位置⑶判断当前位置是否有元素如果没有元素则直接存入;如果有元素则会通过equals方法比较元素属性值是否一样,一样的话表示元素重复,不存;不一样的话存入数组,形成链表细节:当链表长度超过8且数组长度大于等于64时,链表会自动转换为红黑树,从而提高查找效率LinkedHashSet是HashSet的子类,其完全继承了父类中的方法。

m0_74808313的博客 1311

Java【集合

Java的特殊数据容器——集合

在下的博客 1850
上一篇: IDEA的一个小技能工具:根据数据库表生成实体类
下一篇: Linux未找到命令解决
骑蜗牛的人
博客等级 码龄8年 8粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值