简介 实现List接口 允许任何元素,包括null 大致和Vector相当,除了ArrayList不是线程安全的 size()、isEmpty()、get()、set()、iterator()、listIterator()时间复杂度为常数 add()与增加的节点数相等,增加n个,O(n) 其他操作都 ...
分类:
其他好文 时间:
2021-02-23 14:37:54
阅读次数:
0
ArrayList的用法 用法 构造函数 无参构造(它调用的有参):创建一个默认容量为10的数组 有参构造:根据传入的数组大小创建数组容量 添加 add 添加一个引用类型的元素 Collections.addAll(集合,添加的元素) 添加多个元素 注意:ArrayList不允许添加基本数据类型的元 ...
分类:
其他好文 时间:
2021-02-22 12:51:25
阅读次数:
0
CopyOnWriteList简介 ArrayList是线程不安全的,于是JDK新增加了一个线程并发安全的List——CopyOnWriteList,中心思想就是copy-on-write,简单来说是读写分离:读时共享、写时复制(原本的array)更新(且为独占式的加锁),而我们下面分析的源码具体实 ...
分类:
其他好文 时间:
2021-02-20 11:47:34
阅读次数:
0
常用的集合类型如ArrayList,HashMap,HashSet等,在并发环境下修改操作都是线程不安全的,会抛出java.util.ConcurrentModificationException异常,这节主要记录如何在并发环境下安全地修改集合数据。 ###List 举个ArrayList线程不安全 ...
分类:
编程语言 时间:
2021-02-19 13:31:24
阅读次数:
0
java基础--容器 List、ArrayList、LinkList 1.容器的总体框架 详细的贴一张大佬的图 ,有点错的地方就是Map那个分支是单独的,和Collection接口没有任何关联。原文地址 2.容器简述 容器简单点可以说就是一个桶,你可以往桶里放东西、拿东西、查看数据 不同的桶放不一样 ...
分类:
编程语言 时间:
2021-02-19 13:22:05
阅读次数:
0
Collection是一个顶层接口,它主要用来定义集合的约定。 List接口也是一个顶层接口,它继承了Collection接口,同时也是ArrayList、linkedList等集合元素的父类。 Set接口位于与List接口同级的层次,它同时也继承了Collection接口。Set接口提供了额外的规 ...
分类:
其他好文 时间:
2021-02-19 13:01:58
阅读次数:
0
1.ArrayList继承AbstractList,该类的父类AbstractCollection实现了Collection接口。 2.RandomAccess:是一个标识,其内部无任何定义,表名该类支持随机访问。 3.Cloneable:能被克隆,实现了clone()方法,浅拷贝。 4.Seria ...
分类:
其他好文 时间:
2021-02-18 13:46:54
阅读次数:
0
ArrayList源码 以ArrayList的add()方法为例 /** * 新增元素操作 */ // eg1:第一次新增元素e="a1", public boolean add(E e) { /** 确定是否需要扩容,如果需要,则进行扩容操作*/ ensureCapacityInternal(si ...
分类:
其他好文 时间:
2021-02-18 13:31:47
阅读次数:
0
119. 杨辉三角 II 给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行。 在杨辉三角中,每个数是它左上方和右上方的数的和。 示例: 输入: 3 输出: [1,3,3,1] class Solution { public List<Integer> getRow(int rowI ...
分类:
其他好文 时间:
2021-02-16 11:50:12
阅读次数:
0
Collection集合是所有单值存储方式的超级接口,所以在实例化对象的时候要使用它的实现子类。 Collection c = new ArrayList(); Collection集合常用方法 boolean add(E e):向集合中添加元素; int size():获取集合的元素个数; voi ...
分类:
其他好文 时间:
2021-02-09 12:32:10
阅读次数:
0