关于Java中的集合-List派系(二) --------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
上一篇总结了集合框架中老大Collection,这篇总结它下面的几个小弟List派系
1.List派系List是一个接口,是这个列表清单的顶层接口 。他下面有这些小弟数组链表ArrayList,链表LinkedList,数组Vector
凡是List集合中的所有小弟,特点: A . 存储到List集合中的对象,有序排列的 123 abc B. 存储的时候,和取出的时候顺序一致 C. List集合允许存储重复对象 D. List集合存储的对象都有下标
//================================================2.List接口中的方法
void add(int index, E element) 在一个指定的位置上,插入一个对象 Object get(int index)通过下标,获取指定下标上的元素 。通过for循环遍历也可以获取集合。
Object remove(int index)通过下标,移除指定的元素 .返回的是,被删除的那个元素 Object set(int index, Object Element)修改指定位置上的元素 。
List subList(int fromIndex, int toIndex) 获取集合一部分,返回新集合 subtring
listIterator() 返回List特有迭代器对象
//================================================3.List派系的特有迭代器ListIterator
A.正向遍历集合,逆向遍历集合 。遍历的过程中,可以修改集合,包括增加,删除
B.逆向遍历的 前提条件,正向遍历一次hasPrevious() == hasNext()previous() == next()
使用List集合进行特有的逆向遍历的案例:
//使用List集合进行特有的逆向遍历 private static void method_1(){ List list = new ArrayList(); list.add("abc1"); list.add("abc2"); list.add("abc3"); list.add("abc4"); ListIterator lit = list.listIterator(); //前提条件,正向遍历一次 while(lit.hasNext()){ System.out.println(lit.next()); } System.out.println("========================="); while(lit.hasPrevious()){ System.out.println(lit.previous()); } }
//=====================================================4. ArrayList类1. 底层数据结构是数组,可变的数组2. 增长率50%3. 查询快,增删慢4. 线程不安全,执行效率很高5. 需要集合存储对象的时候,如果迭代比较频繁,首先考虑使用ArrayList
增insert 删delete 改update 查select
//=====================================================5. Vector 类
这个集合的底层数据结构,是可变数组结构 查询快,增删慢 Vector增长率100% Vector集合线程安全的,执行效率低 从1.2版本开始,ArrayList取代Vector
//=====================================================6. LinkedList类 LinkedList底层数据结构,链表数据结构 查询慢,增删快 线程不安全,执行效率高 LinkedList自己特有的方法 void addFirst(E e) 将指定元素插入此列表的开头。 void addLast(E e) 将指定元素添加到此列表的结尾。 E removeFirst() 移除并返回此列表的第一个元素。 E removeLast() 移除并返回此列表的最后个元素 E getFirst() 返回此列表的第一个元素。 E getLast() 返回此列表的最后一个元素。
--------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
相关文章
- 黑马程序员_JAVA集合框架的工具类:Collections、Arrays
- 黑马程序员——Java基础---集合框架(二)及工具类Collections、Arrays
- 黑马程序员_ JAVA学习日记—JAVA中的多线程
- 黑马程序员-------Java笔记-------集合综合题(常考的三种题)
- 【JAVA】java中实现map集合的数据存取详解三种方法。Android程序员也是要会写的
- 黑马程序员——java中的反射技术再探
- 黑马程序员:java中的Class类和反射(一)
- 黑马程序员——java的集合类
- 黑马程序员 Java中根据YYYY-MM-DD格式的日期计算为星期几的两种实现方式
- 黑马程序员__集合中的两个工具类以及一些新特新