修改了key之后不能remove 问题的原因是对key进行了修改(因为key类重写了hashcode和equals方法,所以key对象的hash也会随之改变),由于对象在map中的位置是由修改前的key的hash计算而来的,而删除过程中的查找使用的是修改后的对象的hash,两次hash不一致,因此找 ...
分类:
其他好文 时间:
2019-02-08 21:39:50
阅读次数:
211
C++选代器主要用于容器map,set,vector的遍历 我用1,2,3,4表示容器内按顺序的元素,不代表int型 如图 这里表示容器内有十个元素,上图三个东西都是指针,指向容器内某地址,访问时用*或-> ,a.end()指 的是最后一个元素表示的地址的后一个位置,那里没有东西 在C++11里习惯 ...
分类:
编程语言 时间:
2019-01-22 21:50:49
阅读次数:
173
String.isNotBlank(str) //判断字符串不为空 String.isBlank(str)//判断字符串为空 //判断List,Map,Set等不为空 if(null != list && !list.isEmpty()){ //code } ...
分类:
其他好文 时间:
2019-01-15 22:04:18
阅读次数:
205
JDK提供了一组主要的数据结构实现,如List、Set等常用数据结构。这些数据都继承自java.util.Collection接口,并位于java.util包内。 一、List接口 最重要的三种List接口实现:ArrayList、Vector、LinkedList。它们的类图如下: 可以看到,3种 ...
分类:
编程语言 时间:
2019-01-01 13:16:15
阅读次数:
180
简介 前面把List基本记录完了,对于集合List,Map,Set,因为Set基于Map,故先记录Map。 这一篇主要记录Map接口及其抽象类(java version:1.8) 整体架构 参考上图,整体分析如下 Map 映射接口,定义了存储内容为键值对(key value)及map的基本操作方法 ...
分类:
编程语言 时间:
2018-12-28 22:21:30
阅读次数:
241
<pre> 简要: 介绍集合数据,通过key排序的,Map Set 对象 可以迭代 </pre> <pre> es6 引进了新的数据结构用来建立 数据中间的映射关系,Map对象 就是key -- value 键值对 </pre> <script> // 常用api // set get has fo ...
分类:
其他好文 时间:
2018-12-25 23:38:34
阅读次数:
206
转:https://www.cnblogs.com/jing99/p/6947549.html 提到集合之前,先说说数组Array和集合的区别: (1)数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型) (2)JAVA集合可以存储和操作数目不固定的一组数据。 (3)若程序时 ...
分类:
其他好文 时间:
2018-12-25 21:47:35
阅读次数:
133
List封装了链表,Vector封装了数组, list和vector得最主要的区别在于vector使用连续内存存储的,他支持[]运算符,而list是以链表形式实现的,不支持[]。 Vector对于随机访问的速度很快,但是对于插入尤其是在头部插入元素速度很慢,在尾部插入速度很快。List对于随机访问速 ...
分类:
其他好文 时间:
2018-12-11 17:19:10
阅读次数:
128
好了,今天就给大家介绍到这里了,这 6 种,你知道几种?另外,Map, Set 也有类似的初始化的方法,大家有兴趣的可以试一下。
分类:
编程语言 时间:
2018-12-06 20:22:35
阅读次数:
161
C++的关联容器主要是两大类map和set 我们知道谈到C++容器时,我们会说到 顺序容器(Sequence containers),关联容器(Associative containers),无序关联容器(Unordered associative containers)以及容器适配器(Contai ...
分类:
编程语言 时间:
2018-11-29 19:57:53
阅读次数:
166