集合的体系:
---------| collection 单例集合的根接口
--------------| List 如果实现了list接口的集合类,具备的特点:有序,可重复 注:集合中的有序不是指自然顺序,而是指添加进去的顺序与出来的顺序是一致的
------------------| ArrayList ArrayList底层维护了一个object数组的实现的。(线程不安全),特点:查询速度快,增删速度慢。
------------------| LinkedList LinkedList底层是使用链表结构实现的,特点:查询速度慢,增删速度快。
------------------| Vector(了解即可) 底层也是维护一个Object数组的实现的,实现与ArrayList是一样的,但是Vector是线程安全的,操作效率低
--------------| set 如果实现了set接口的集合类,局部特点:无序,不可重复
------------------|
------------------|
1、ArrayList集合
ArrayList一些常用方法几乎和collection集合一样的
2、 ArrayList集合的特有迭代器
listIterator():
返回列表中的列表迭代器
2、ArrayList集合的优点 (ArrayList集合就是传说中的动态数组)
2.1、动态的增加和减少元素
2.2、实现了ICollection和IList接口
2.3、灵活的设置数组的大小
3、ArrayList与Vector的区别
相同点:ArrayList与Vector底层都是使用Object数组实现的.
不同点:
1.ArrayList是线程不同步的,操作效率高;Vector是线程同步的,操作效率低
2.ArrayList是jdk1.2出现的,Vector是jdk1.0出现的
4、实例
1 package com.dhb.collection; 2 3 import java.util.ArrayList; 4 import java.util.Iterator; 5 6 /** 7 * @author DSHORE / 2018-5-16 8 * 9 */ 10 public class Demo5 { 11 public static void main(String[] args) { 12 //创建ArrayList集合 13 ArrayList<Object> list = new ArrayList<Object>(); 14 //添加 15 list.add("张三"); 16 list.add("李四"); 17 list.add("王五"); 18 list.add("赵六"); 19 list.add(1,"老七");//跟下标插入元素 20 System.out.println(list);//返回值:[张三, 老七, 李四, 王五, 赵六];说明“老七”把“李四”替换了 21 ArrayList<Object> list2 = new ArrayList<Object>(); 22 list2.add("安其拉"); 23 list2.add("亚瑟"); 24 list2.add("赵云"); 25 list.addAll(list2);//把list2集合中的数据添加到list集合中 26 System.out.println(list);//返回值:[张三, 老七, 李四, 王五, 赵六, 安其拉, 亚瑟, 赵云] 27 28 //获取迭代器 29 Iterator<Object> it = list.listIterator(); 30 while (it.hasNext()) { //hasNext()和next()都是迭代器(listIterator)下面的方法 31 Object o = it.next(); 32 System.out.print(o+",");//返回值:张三,老七,李四,王五,赵六,安其拉,亚瑟,赵云, 33 } 34 } 35 }
原创作者:DSHORE 作者主页:http://www.cnblogs.com/dshore123/ 原文出自:http://www.cnblogs.com/dshore123/p/9052617.html 欢迎转载,转载务必说明出处。(如果本文对您有帮助,可以点击一下右下角的 推荐,或评论,谢谢!) |