![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
集合
文章平均质量分 66
.CONSTANT
努力搬砖!
展开
-
List三种实现的区别
经常需要在内部增删元素,但是很少需要通过索引快速访问时使用;如果多线程访问,则需要自行编程解决线程安全问题。数组,按照索引下标访问速度快O(1),但是删除添加元素时会导致元素的移动,速度慢O(n)数组,按照索引下标访问速度快O(1),但是删除添加元素时会导致元素的移动,速度慢O(n)1、相同点:三个类都是实现了List接口,储存数据特点相同,储存有序的,可重复的数据。不同步,线程不安全,但是并发高,访问效率高。不同步,线程不安全,但是并发高,访问效率高。同步,所以线程安全,但是并发低,访问效率低。原创 2022-09-27 20:47:53 · 446 阅读 · 0 评论 -
fail-fast与fail-safe
遍历时一旦发现原集合对象发生修改则会抛出 ConcurrentModificationException被遍历的是原集合对象的元素这类迭代器不需要额外内存空间。原创 2022-09-19 18:03:27 · 362 阅读 · 0 评论 -
Java哈希表
Hash一般翻译为散列,也有直接音译为哈希的,这就是把任意长度的输入通过散列算法,变换成固定长度的输出,该输出就是散列值(哈希值);这种转换是一种压缩映射,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来唯一的确定输入值 简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。消息摘要算法的使用 md5、SHA-1等String source="柏嘉safsadfsadflsajdflsakdvklxjcvlkjdsl";...原创 2022-08-31 21:53:57 · 86 阅读 · 0 评论 -
几种Set的比较
HashSet:不保证元素的添加顺序,底层采用哈希表算法,查询效率高。判断两个元素是否相等equals方法返回为true要求hashCode值必须相等。即要求存入HashSet中的元素要覆盖equals方法和hashCode方法- LinkedHashSet是HashSet的子类,底层采用了哈希表算法以及链表算法,既保证了元素的添加顺序,也保证了查询效率。但是整体性能要低于HashSet- TreeSet不保证元素的添加顺序,但是会对集合中的元素进行排序。...原创 2022-08-30 21:32:12 · 549 阅读 · 0 评论 -
LinkedList底层源码
private static class Node { 静态内部类节点上存储的具体数据指向下一个节点指向上一个节点//创建节点对象的参数prev前一个节点的引用 element具体存储的数据 next下一个节点引用}}}缓存尾节点创建新的节点,新节点的下一个节点为null将尾指针执行新创建的节点if (l == null) 如果原来的尾节点为null,则新增的节点应该是链表的第一个节点将头指针指向新创建的节点。原创 2022-08-24 22:13:53 · 50 阅读 · 0 评论 -
Vector底层源码
类定义@since 1.0 从JDK1.0开始提供的实现类。原创 2022-08-24 22:02:47 · 118 阅读 · 0 评论 -
ArrayList底层源码
用于统计当前集合对象的修改次数参数1:新增元素;参数2:存储数据的数组;参数3:当前集合中存储的元素个数返回true表示添加成功}//如果数组已经存满了,则首先进行扩容处理if (s == elementData.length) 判断当前集合中存储的元素个数是否和数组长度相等如果相等则进行扩容处理在数组的指定位置存储元素集合中所存储的元素个数}private Object[] grow() { //扩容处理方法。原创 2022-08-24 21:57:43 · 73 阅读 · 0 评论 -
java 集合
比如存一个int型数据1放入集合中,其实它是自动转换成Integer 类后存入的(装箱操作),Java中每一种基本类型都有对应的引用类型。数组不是面向对象的,存在明显的缺陷,集合弥补了数组的缺点,比数组更灵活更实用,而且不同的集合框架类可适用不同场合。它是Java集合的顶层接口(不包括map系列的集合,Map接口是map系列集合的顶层接口)针对Java中的数组定长,Java提出了集合框架,实现了一种变长存储数据的容器---集合。- 集合存放的是多个对象的引用,对象本身还是放在堆内存中。原创 2022-08-23 20:25:54 · 93 阅读 · 0 评论