JavaSE入门学习35:Java集合框架之List接口及其实现类ArrayList和LinkedList
2016-05-02 17:01
861 查看
一List接口概述
List接口是Collection接口的子接口,实现List接口的集合类中的元素是有顺序的,而且可以重复,被称为序列。List集合中的元素都对应一个整数型的序列容器中的序号记载其在容器中的位置,可以根据序号存取容器中的元
素。List接口可以精确的控制每个元素的插入位置,或者删除某个位置元素。
Java所提供的List集合实现类类有ArrayList实现类、LinkedList实现类、Vector等,我们主要使用的是ArrayList实
现类和LinkedList实现类。
List接口中定义以及从Collection接口继承的方法:
二ArrayList实现类
ArrayList实现类是数组序列,是List接口的一个重要实现类(使用频率最高的),该实现类底层是由数组实现的。ArrayList实现类是一个数组队列,相当于动态数组。它由数组实现,随机访问效率高,随机插入、随机删除效率低。
ArrayList实现类中的方法:
实例代码:
<span style="font-size:18px;"><span style="font-size:18px;">import java.util.*; public class Demo{ public static void main(String[] args){ List l1 = new ArrayList(); for(int i=0;i<=5;i++){ l1.add("a"+i); } System.out.println(l1); l1.add(3,"a100"); System.out.println(l1); l1.add(6,"a200"); System.out.println(l1); System.out.println((String)l1.get(2)+""); System.out.println(l1.indexOf("a3")); l1.remove(1); System.out.println(l1); } }</span></span>
运行结果:
三LinkedList实现类
LinkedList实现类是List接口的一个重要的实现类,LinkedList实现类是一个双向链表。它也可以被当作堆栈、队列或双端队列进行操作。LinkedList实现类随机访问效率低,但随机插入、随机删除效率低。
LinkedList实现类的方法:
由于实例和上面一样就不在赘述。
四List接口常用算法
类java.util.Collection提供了一些静态方法实现了基于List集合的一些常用算法:实例代码:
<span style="font-size:18px;"><span style="font-size:18px;">import java.util.*; public class Test{ public static void main(String[] args){ List l1 = new ArrayList(); for(int i=0;i<=9;i++){ l1.add("a"+i); } System.out.println(l1); Collections.shuffle(l1);//随机排列 System.out.println(l1); Collections.reverse(l1);//逆序排列 System.out.println(l1); Collections.sort(l1);//排序 System.out.println(l1); System.out.println(Collections.binarySearch(l1,"a5")); } } </span></span>
运行结果:
相关文章推荐
- 深入理解java异常处理机制
- JDK源码学习(2)-TreeMap源码分析
- java并发编程(7)--Lock
- IT忍者神龟之Spring Task动态添加任务
- Java实现文件复制的四种方式
- JAVA SE 8 学习笔记(二)Stream API
- Java链接sql server并对它进行查询、增删改
- 《Java多线程编程核心技术》读书笔记
- Java InputStream、String、File相互转化
- java中Static&Final的使用方法,&&&Java中两个主要的抽象Abstract&&Implement
- Google Java编码规范
- maven+springmvc+easyui+fastjson+pagehelper
- RandomAccessFile类
- spring boot 异常处理
- 华为Java编程规范
- Java 多线程编程学习(一)
- Maven——Java项目构建工具
- 对象流
- 安卓开发之java基础笔记【6】
- 内存流