java集合
WalkerShen
端正 静心 呼吸 下笔
展开
-
【java集合】LinkedList源码解析
get方法 public E get(int index) { //检查下标 checkElementIndex(index); // return node(index).item; }checkElementIndex private void checkElementIndex(int index) { //如果index不符合范围,则抛出异常 if (!isElementInd原创 2022-04-22 18:20:34 · 477 阅读 · 0 评论 -
【java集合】LinkedList源码解析
get方法 public E get(int index) { //检查下标 checkElementIndex(index); // return node(index).item; }checkElementIndex private void checkElementIndex(int index) { //如果index不符合范围,则抛出异常 if (!isElementInd原创 2022-04-22 17:40:30 · 433 阅读 · 0 评论 -
【java集合】ArrayList源码分析
add方法 private int size; //数组的长度public boolean add(E e) { //容量加1 ensureCapacityInternal(size + 1); // Increments modCount!! elementData[size++] = e; return true; }ensureCapacityInternal private void ensureCap原创 2022-04-22 17:38:59 · 311 阅读 · 0 评论 -
【java集合】多线程场景下使用 ArrayList(含源码解析)
大家好,我是walker一个从文科自学转行的程序员~爱好编程,偶尔写写编程文章和生活欢迎关注公众号【I am Walker】,一块学习编程~ArrayList应该是我们比较常用的集合了,在一般场景下使用是没有问题的,但是如果在多线程场景下,应该怎么使用呢?主要有两种方式,如下:方式一:使用Collections.synchronizedList()ArrayList 不是线程安全的,如果遇到多线程场景,可以通过 Collections 的 synchronizedList 方法将其转换.原创 2022-04-22 17:24:49 · 1638 阅读 · 0 评论 -
【java集合】ArrayList 和 Vector 的区别是什么?
大家好,我是walker一个从文科自学转行的程序员~爱好编程,偶尔写写编程文章和生活欢迎关注公众号【I am Walker】,一块学习编程~这两个类都实现了 List 接口(List 接口继承了 Collection 接口),他们都是有序集合1、线程安全:Vector 使用了 Synchronized 来实现线程同步,是线程安全的,而 ArrayList 是非线程安全的。vector的add方法2、性能:ArrayList 在性能方面要优于 Vector。因为ArrayList没有.原创 2022-04-22 16:28:43 · 3259 阅读 · 0 评论 -
【java集合】ArrayList 和 LinkedList 的区别详解
大家好,我是walker一个从文科自学转行的程序员~爱好编程,偶尔写写编程文章和生活欢迎关注公众号【I am Walker】,一块学习编程~1、数据结构实现ArrayList 是动态数组的数据结构实现,而 LinkedList 是双向链表的数据结构实现。//ArrayListtransient Object[] elementData; //LinkedListtransient Node<E> first;transient Node<E> last;.原创 2022-04-21 23:55:37 · 364 阅读 · 0 评论 -
如何实现数组和 List 之间的转换?
数组转 List:使用 Arrays. asList(array) 进行转换。List 转数组:使用 List 自带的 toArray() 方法。public void arraysToList(){ /** * List转Array */ List<String> arrayList = new ArrayList<>(); arrayList.add("a"); //使用toAr原创 2022-04-21 22:46:25 · 2009 阅读 · 0 评论 -
【java集合】java集合如何边遍历边移除_ConcurrentModificationException
错误方式不能使用for循环,若是使用的话,出现的情况 public void wrongRemove(){ ArrayList<String> list = new ArrayList<>(); list.add("a"); list.add("B"); list.add("c"); list.add("d"); for (String s : list) { .原创 2022-04-20 18:24:59 · 784 阅读 · 0 评论