ArrayList与LinkedList的一些基本使用方法与异同

ArrayList

package com.ff.javaCollection.Day1;

import java.util.ArrayList;

public class ArrayListDemo extends ArrayList {
    public static void main(String[] args) {
        ArrayListDemo c=new ArrayListDemo();
        //Collection c=new ArrayList();
        c.add("a");//添加元素,往集合尾部添加
        c.add(1);
        c.add(true);
        c.add(2);
        c.add("abc");
        c.add("def");

        //ArrayList.removeRange(1,2);
        //c.remove(1);//删除某个元素
        //c.clear();//清空元素
        //c.isEmpty();//判断是否为空
        //c.contains(1);//判断是否包含某个元素
        //System.out.println(c.size());//返回集合中的元素数
        //c.removeRange(2,3);//移除列表中索引在 fromIndex(包括)和 toIndex(不包括)之间的所有元
        System.out.println(c);
    }
}

LinkedList

package com.ff.javaCollection.Day2;

import java.util.LinkedList;
/*
* LinkedList<E>
* 采用链表存储方式。插入、删除元素时效率比较高
* LinkedList 类还为在列表的开头及结尾 get、remove 和 insert 元素提供了统一的命名方法。这些操作允许将链接列表用作堆栈、队列或双端队列
 * */
public class LinkedListDemo {
    public static void main(String[] args) {
        LinkedList list=new LinkedList();
        list.add("a");
        list.add("b");
        list.add("c");
        list.add("d");
        //list.addFirst("K");//将指定元素插入列表开头
        //list.addLast("K1");//将指定元素插入元素末尾
        //list.getFirst();//获取列表第一个元素
        //list.getLast();//获取列表最后一个元素
        //System.out.println(list.get(2));//获取数组下标为2的元素值
        //System.out.println(list.indexOf("a"));
        //获取列表中首次出现的元素索引,若是不存在则返回-1
        //list.offer("w");//将指定元素添加到列表末尾
        //System.out.println(list.lastIndexOf("b"));//获取列表中最后出现的指定元素索引
        //list.set(2,"p");//将列表中指定位置的元素换成指定元素
        //System.out.println(list.size());//返回列表的长度
        System.out.println(list);
    }
}

ArrayList和LinkedList的异同

同:ArrayList和LinkedList都是实现了List接口的容器类,用于存储一系列的对象引用,他们都可以对元素的增删改查进行操作
ArrayList:在集合的末尾添加或删除元素所用的时间是一致的,但是在中间添加或删除元素时所用时间就会大大增加;但是它在根据索引查找元素时速度会很快
LinkedList:它在插入、删除集合中任何位置的元素所花费的时间都是一样的,但是根据索引查询一个元素的时候会比较慢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值