java集合-List要点分析.pptVIP

  • 12
  • 0
  • 约2.21千字
  • 约 25页
  • 2016-07-31 发布于湖北
  • 举报
--List集合;;集合:Java API所提供的一系列类的实例,可以用于动态存放多个对象。 JDK所提供的集合API位于 java.util 包内。 ;Java Collections Framework图如下JDK所提供的集合API位于 java.util 包内。 ; ; ;Collection接口中定义了一些集合常用方法 ;JDK1.4以前: 装入集合的数据都会被当作Object对象来存放,从而失去了自己的实际类型。 从集合中取出元素时,需要进行强制类型转换。效率低,容易产生错误。 JDK5.0之后,可以用泛型来解决这个问题 在定义一个集合时就指定集合存储的对象的数据类型 如:CollectionString coll = new ArrayListString(); 从集合中取出元素时,无需转型了。 如:String str1 = it.next(); ;优点: 简化集合的使用 增强代码的可读性和稳定性 意义: 用于保护存入集合中元素的数据类型 ;泛型方法 public static T void method(T t){} public static T T method(T t){ return (T)new Object(); } 泛型类: public class TestT { public T data; 接口 interface OperatorT{ void add(T t); } ;List接口是Collection接口的子接口 实现List接口的集合类中的元素是有序的,且允许重复。 List集合中的元素都对应一个整数型的序号记载其在集合中的位置,可以根据序号存取集合中的元素。 JDK API所提供的List集合类常用的有 ArrayList LinkedList Vector(并不常用) ; ;List接口比Collection接口中新增的几个实用方法: public Object get(int index); 返回列表中的元素数 public Object add(int index, Object element); 在列表的指定位置插入指定元素.将当前处于该位置的元素(如果有的话)和所有后续元素向右移动 public Object set(int?index, Object?element) ; 用指定元素替换列表中指定位置的元素 public Object remove(int?index); 移除列表中指定位置的元素 public ListIterator listIterator() 返回此列表元素的列表迭代器;ArrayList是使用数组结构实现的List集合。 优点: 对于使用索引取出元素有较好的效率 它使用索引来快速定位对象 缺点: 元素做删除或插入速度较慢 因为使用了数组,需要移动后面的元素以调整索引顺序。 ;List接口比Collection接口中新增的几个实用方法: public Object get(int index); 返回列表中的元素数 public Object add(int index, Object element); 在列表的指定位置插入指定元素.将当前处于该位置的元素(如果有的话)和所有后续元素向右移动 public Object set(int?index, Object?element) ; 用指定元素替换列表中指定位置的元素 public Object remove(int?index); 移除列表中指定位置的元素 public ListIterator listIterator() 返回此列表元素的列表迭代器;LinkedList是使用双向链表实现的集合。 LinkedList新增了一些插入、删除的方法。 优点: 对频繁的插入或删除元素有较好的效率 适合实现栈(Stack)和队列(Queue);所有实现了Collection接口的集合类都有一个iterator()方法用以返回一个实现了Iterator接口的对象。 Iterator it = coll.iterator();;Iterator是专门的迭代输出接口。所谓的迭代输出就是将元素进行判断,判断是否有内容,如果有内容则把内容取出。 Iterator对象称作迭代器,用以方便的实现对集合内元素的遍历操作。;Iterator接口中定义了如下方法: boolean hasNext(); //判断游标右边是否有元素 Object next(); //返回游标右边的元素并将游标移动到下一个位置 void remove(); //删除游标左面的元素;凡是能用 Iterator 迭代的集合都可以用JDK5.0中增强的for循环来更简便的遍历。; 栈(Stack)的存储特点:LIFO 后进先出(last i

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档