Java连载86-List集合详解

Posted ruigege0000

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java连载86-List集合详解相关的知识,希望对你有一定的参考价值。

一、List集合

1.List集合存储元素的特点:

(1)有序(List集合中存储有下标)?:存进去是这样的顺序,取出来还是按照这个顺序取出?。

(2)可重复

2.深入ListJ集合

ArrayList集合底层是数组,数组?是有下标的;所以ArrayList集合有很多自己的特性?;ArrayList集合底层默认初始化容量是10,扩大之后的容量是原容量的1.5倍?;Vector集合底层默认初始化容量为10,扩大之后的容量是原容量的两倍

3.如何优化ArrayList和Vector

尽量减少扩容操作,因为扩容需要数组拷贝,数组拷贝是很耗内存的,一般推荐在创建集合的时候指定初始化容量

 

package com.bjpowernode.java_learning;

import java.util.*;

?

public class D86_1_ListCollectionAnalysis {

  public static void main(String[] args) {

    //创建一个List集合

    //Collection c = new ArrayList();//这样初始化一个列表编译没问题,但是我们就不用能用List特有的方法了

    List l = new ArrayList();

    //List l = new LinkedList();//这两种初始化方式哪种都可以,这就涉及到底层的数据结构问题了,可参见《算法》一书

    //向列表的尾部添加元素

    l.add(100);

    l.add(99);

    l.add(23);

    l.add(250);

    l.add("hiosaf");

    //add(int index,E e)向指定位置插入e

    l.add(5,"jioasf");

    System.out.println(l.get(1));

    System.out.println("====================");

    //遍历

    Iterator it = l.iterator();

    while(it.hasNext()) {

      System.out.println(it.next());

    }

    //这也看出来,既可以使用迭代器来遍历,也可以使用get方法进行遍历

   

  }

}

?

技术图片

二、源码:

D86_1_ListCollectionAnalysis.java?

https://github.com/ruigege66/Java/blob/master/D86_1_ListCollectionAnalysis.java

2.CSDN:https://blog.csdn.net/weixin_44630050

3.博客园:https://www.cnblogs.com/ruigege0000/

4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

 技术图片

以上是关于Java连载86-List集合详解的主要内容,如果未能解决你的问题,请参考以下文章

Java连载54-两种单例模式接口详解

Java连载85-集合的Contains和Remove方法

Java连载39-构造方法详解

Java连载23-for循环练习whiledowhile详解

Java连载58-静态内部类成员内部类详解

阿里《JAVA实习生入职测试题—2019最新》之答案详解(连载一)