|
ava集合:就是将若干用途、性质相同或者相近的“数据”组合而成一个整体。
·从体系上讲,集合类型可以归纳为三种: 1.集(set):Set集合中不区分元素的顺序,不允许出现重复元素 2.列表(List):List集合区分元素的顺序,且允许包含重复元素。 3.映射(Map):映射中保存成对的“键-值”(Key-Value)信息,映射中不能包含重复的键,每个键最多只能映射一个值。
·Java集合中只能保存引用类型的数据,实际上存放的是对象的引用,而非对象本身,集合中元素相当于引用类型变量。
Collection接口: ·java.util.Collection接口是描述Set和List集合类型的根接口,其中定义了有关集合操作的普遍性方法: boolean add(Object o) boolean remove(Object o) int size() //返回集合中元素个数 boolean isEmpty() //判断是否为空 boolean contains(Object o) //是否包含元素 void clear() //清空集合 Iterator iterator() //统一遍历 Object[] toArray() //将集合转换成数组
·java.util.Set和java.util.List都是Collection的子接口,分别描述前述的集和列表结构。 ·List接口规定使用者可以对列表元素的插入位置进行精确控制,并添加了根据元素索引来访问元素等功能,接口中新添加了相应方法: void add(int index,Object element) Object get(int index) Object set(int index,Object element) int indexOf(Object o) Object remove(int index)
·java.util.Map接口描述了映射结构,Map结构允许以键集、值集合或键-值映射关系集的形式查看某个映射的内容。 主要方法: Object put(Object key,Object value) //加入键值对 Object get(Object key) boolean isEmpty() void clear() int size() boolean containsKey(Object key) boolean containsValue(Object value) Set keySet()//返回所有映射集合 Collection values()
·java.util.ArrayList类实现了List接口,用于表述长度可变的数组列表。 ·ArrayList列表允许元素取值为null。提哦那个了一些方法来操作列表容量的大小,包括: public ArrayList() public ArrayList(int initialCapacity) public void ensureCapacity(int minCapacity) public void trimToSize()
·java.util.Vector也是实现了List接口,其描述的也是可变长度的对象数组。 ·与ArrayList的差别:Vector是同步(线程安全)的,运行效率要低一些,主要用在在多线程环境中,而ArrayList是不同步的,适合在单线程中使用。 常用方法: public Vector() public Object elementAt(int index) public void addElement(Object obj) public void removeElementAt(int index) public void instertElementAt(Object obj,int index) public boolean removeElement(Object obj) public void removeAllElements() public Object[] toArray()
·java.util.Stack类(栈)继承了Vector类,对应数据结构中“后进先出”Last in first out方式存储和操作数据的对象栈。 常规栈操作方法: public Strack() public Object push(E item) public Object pop() public Object peek() public boolean empty() public void clear() public int search(Object o)
|