List集合构造方法以及主要方法

来源:互联网 发布:美股行情 交易软件 编辑:程序博客网 时间:2024/06/15 18:49
package list;import java.util.ArrayList;import java.util.Iterator;import java.util.LinkedList;import java.util.Vector;/** * List集合的子类特点    ArrayList:        构造方法:            ArrayList()                 构造一个初始容量为 10 的空列表。                 //private static final int DEFAULT_CAPACITY = 10;            ArrayList(Collection<? extends E> c)                 构造一个包含指定 collection 的元素的列表,                这些元素是按照该 collection 的迭代器返回它们的顺序排列的。             ArrayList(int initialCapacity)                 构造一个具有指定初始容量的空列表。     Vector:    LinkedList: * @author wjddn * */public class ListDemo03 {    public static void main(String[] args) {        ArrayList<Object> arrayList = new ArrayList<>();        arrayList.add("a");        arrayList.add("b");        arrayList.add("c");        arrayList.add("c");        System.out.println(arrayList);        System.out.println("**************************************");        ArrayList<Object> arrayList2 = new ArrayList<>(arrayList);        System.out.println(arrayList2);        System.out.println("**************************************");        ArrayList<Object> arrayList3 = new ArrayList<>(20);        /**         * LinkedList()                 构造一个空列表。            LinkedList(Collection<? extends E> c)                 构造一个包含指定 collection 中的元素的列表,这些元素按其 collection 的迭代器返回的顺序排列。          */        //常用方法        LinkedList<Object> linkedList = new LinkedList<>();        linkedList.add("张三");        linkedList.add("李四");        linkedList.add("王五");        linkedList.add("王五");  //元素可重复        System.out.println("是否存在张三这个元素: "+linkedList.contains("张三"));        System.out.println("***************");        //迭代        Iterator<Object> iterator = linkedList.iterator();        while(iterator.hasNext()){            Object obj = iterator.next();            System.out.println(obj);        }        //返回此列表中首次出现的指定元素的索引,如果此列表中不包含该元素,则返回 -1。        System.out.println("首次出现:"+linkedList.indexOf("李四"));        //返回此列表中最后出现的指定元素的索引,如果此列表中不包含该元素,则返回 -1        System.out.println("最后一次出现: "+linkedList.lastIndexOf("王五"));        /**         * Vector()                 构造一个空向量,使其内部数据数组的大小为 10,其标准容量增量为零。                  public Vector() {                    this(10);                }           Vector(Collection<? extends E> c)                 构造一个包含指定 collection 中的元素的向量,                这些元素按其 collection 的迭代器返回元素的顺序排列。            Vector(int initialCapacity)                 使用指定的初始容量和等于零的容量增量构造一个空向量。            Vector(int initialCapacity, int capacityIncrement)                 使用指定的初始容量和容量增量构造一个空的向量。          */        Vector<Object> vector = new Vector<>();        System.out.println("初始化容量: "+vector.capacity());    }    /**     * ArrayList 、 LinkedList 、 Vector的区别:     *  ArrayList、Vector的底层实现是数组,初始化大小都是10 LinkedList底层实现是链表     *  ArrayList、Vector 增删快,查询慢   LinkedList增删慢 查询快     *  Vector是线程安全的、ArrayList、linkedList是线程不安全的     *  ArrayList自动扩容为50%,Vector扩容量为原来的100%     */}
阅读全文
0 0
原创粉丝点击