一:

我们常用对集合的操作,查询、增删等操作。

由于集合的存储的方式的不同,导致有些集合查询快但是增删慢。有些集合增删快、但是查询慢。

ArrayList:由于ArrayList存储的方式为数组形式。有索引,导致查询速度很快,但是增删的时候,需要创建新的数组,对原先数组进行复制操作导致速度慢。

所以在查询的时候,我们可以使用ArrayList,而LinkedList是链表,由于每个元素存储下个元素的地址和上个元素地址,所以在增加和删除的时候,只是变更数组的地址就可以,增删比较快,但是查询较慢。

所以:

ArrayList:适合查询

LinkedList:适合增删,提供了首尾的插入和删除。

我们看下这2个集合的方法:

 package test10;

 import java.util.LinkedList;

 public class Link_Test {
public static void main(String...args){
link_Me();
}
public static void link_Me(){
LinkedList<String> link_list=new LinkedList<>();
link_list.addFirst("ti");//首添加元素
link_list.addFirst("ti");
link_list.addFirst("ti");
link_list.addFirst("ti");
link_list.push("");
System.out.print(link_list);
link_list.pop();//末尾删除。
System.out.print(link_list);
if(!link_list.isEmpty()){System.out.print();}
link_list.removeFirst();// 首尾删除。
link_list.removeLast();
System.out.print(link_list);
}
}

其余的方法是List和Collection的接口方法。

List集合的子类ArrayList和LinkedList的更多相关文章

  1. java集合框架05——ArrayList和LinkedList的区别

    前面已经学习完了List部分的源码,主要是ArrayList和LinkedList两部分内容,这一节主要总结下List部分的内容. List概括 先来回顾一下List在Collection中的的框架图 ...

  2. java集合框架之ArrayList与LinkedList的区别

    参考http://how2j.cn/k/collection/collection-arraylist-vs-linkedlist/690.html#nowhere ArrayList和LinkedL ...

  3. [javaSE] 集合框架(ArrayList,LinkedList,Vector)

    ArrayList特点:底层使用数组数据结构,查询速度快(使用脚标查),插入删除慢(索引要改变) LinkedList特点:底层使用链表数据结构,查询慢(需要一个一个去问),插入删除快 Vector特 ...

  4. Java集合 之List(ArrayList、LinkedList、Vector、Stack)理解(new)

    一. ArrayList底层实现原理 对比 和Vector不同,ArrayList中的操作不是线程安全的!所以,建议在单线程中才使用ArrayList,而在多线程中可以选择Vector或者CopyOn ...

  5. 27、ArrayList和LinkedList的区别

    在Java的List类型集合中,ArrayList和LinkedList大概是最常用到的2个了,细看了一下它们的实现,发现区别还是很大的,这里简单的列一下个人比较关心的区别. 类声明 ArrayLis ...

  6. JAVA集合一:ArrayList和LinkedList

    JAVA集合一:ArrayList和LinkedList 参考链接: HOW2J.CN 前言 这几篇博客重点记录JAVA的几个重要的集合框架:ArrayList.LinkedList.HashMap. ...

  7. Javase之集合体系(2)之List及其子类ArrayList,LinkedList与Vector及其迭代器知识

    集合体系之List及其子类ArrayList,LinkedList与Vector及其迭代器知识 List(接口) 特点:有序(存储与取出顺序相同),可重复 List子类特点: ​ ArrayList: ...

  8. Java集合之ArrayList和LinkedList的实现原理以及Iterator详解

    ArrayList实现可变数组的原理: 当元素超出数组内容,会产生一个新数组,将原来数组的数据复制到新数组中,再将新的元素添加到新数组中. ArrayList:是按照原数组的50%来延长,构造一个初始 ...

  9. JAVA之旅(十九)——ListIterator列表迭代器,List的三个子类对象,Vector的枚举,LinkedList,ArrayList和LinkedList的小练习

    JAVA之旅(十九)--ListIterator列表迭代器,List的三个子类对象,Vector的枚举,LinkedList,ArrayList和LinkedList的小练习 关于数据结构,所讲的知识 ...

随机推荐

  1. HTML5 number类型文本框step属性的验证机制——张鑫旭

    我在下一盘很大的棋,本文只是其中的一个棋子. 需要提前知道的: 目前而言,对step雄起的浏览器为IE10+, Chrome以及Opera浏览器. 需要预先知道number类型input的一些基本知识 ...

  2. @media 各大尺寸

    @media screen and (min-width:1200px){ #page{ width: 1100px; }#content,.div1{width: 730px;}#secondary ...

  3. EJB JBOSS的安装

    下载地址:http://www.jboss.org/jbossas/downloads 下载JBoss 4.2.3-->解压 启动:bin-->run.bat 管理后台:www.local ...

  4. 六位数随机验证 sms_code.py

    #!/usr/bin/python env # coding:utf-8 import random def code(num=6): res = "" for i in rang ...

  5. 【Java】得到当前系统时间,精确到毫秒

    import java.text.SimpleDateFormat; import java.util.Date; import java.util.Calendar; public class Ma ...

  6. Btree并发内存回收

    在并发写Btree原理剖析 一文中提到,节点内存回收有可能导致内存突增以及影响写性能.本文将阐述最近对内存回收的改进,多线程可并行回收内存. 回收策略 采用基于版本的机制,Btree全局维护一个版本号 ...

  7. PLSQL中使用二维存储结构---二维数组

    代码如下:  --PLSQL中没有数组的概念 用TYPE 和Table of Record来代替多维数组--create by jenrry 20171028-- 1.0 建立存放列的测试表creat ...

  8. Jquery Ajax 提交json数据

    在MVC控制器(这里是TestController)下有一个CreateOrder的Action方法 [HttpPost] public ActionResult CreateOrder(List&l ...

  9. 【MySQL】sysbench压测服务器及结果解读

    主要压测范围包括CPU测试.磁盘IO测试.线程测试.OLTP测试等,那么sysbench就可以满足我们的压测需求.下面我们简单来看下sysbench的安装使用以及压测结果的解读. 一.sysbench ...

  10. 第0篇 如何访问win10的C$等默认共享

    近日换新机器,装了win10,但想从旧机器访问win10的\\ip\D$拷数据过去,首先发现怎么也连不上win10的共享,于是把win10防火墙中“文件和打印机共享”的“专用”(即内网)勾选上终于可以 ...