一。Collection及其子接口List,Set

Collection是List和Set的父接口。Java语言不仅可以用类说明引用类型也可以用接口说明引用类型。该类型引用所指向的对象必须实施了该接口。

1.1List接口

List接口引用存放的是有序的元素,元素可以重复。

import java.util.*;

public class Test{

public static void main(String[] agrs){

//容器aa的引用为List类型,实施为ArrayList类,即引用和实施相分离。<>定义容器中元素的类型,类型必须为类,如存储的元素为整数,必须

List<String> aa=new ArrayList<String>();

//增加新元素

aa.add("苹果");

aa.add("橘子");

aa.add("香蕉");

aa.add("桃子");

aa.add("苹果");

//aa.get(int index)根据索引获得元素

System.out.println(aa.get(2));

//aa.remove(int index)根据索引删除元素

aa.remove(2);

System.out.println(aa.size());

//删除全部元素

aa.clear();

}

1.2Set接口

与List接口不一样,Set接口的元素没有顺序,元素也不可重复。

import java.util.*;

public class Test{

public static void main(String[] agrs){

Set<Integer> aa=new HashSet<Integer>();

aa.add(new Integer(2));

aa.add(new Integer(3));

aa.add(new Integer(4));

aa.add(new Integer(5));

aa.remove(new Integer(5));

System.out.println(aa.size());

}

}

1.3iterator方法

Collection接口有iterator()方法,通过iterator()方法生成一个循环器,通过.next()方法,可以返回下一个元素,直到穷尽。

import java.util.*;

public class Test{

public static void main(String[] agrs){

Set<Integer> aa=new HashSet<Integer>();

aa.add(new Integer(2));

aa.add(new Integer(3));

aa.add(new Integer(4));

aa.add(new Integer(5));

//生成循环器

Iterator i=aa.iterator()

//如果循环器有下一个元素,将其打印出来

while(i.hasNext()){

System.out.println(i.next());

}

}

}

二.Map接口

Map接口存储的元素为键值对。通过键可以得到值。

import java.util.*;

public class Test{

public static void main(String[] agrs){

Map<String ,Integer>  map=new HashMap<String ,Integer>();

map.put("niuhaitao",1);

map.put("maxiaohui",2);

map.put("niuzitong",3);

System.out.println(map.get("niuzitong");

}

}

Map中,put()方法添加元素,get()方法获得指定键的值。

keySet()方法将所有的键转化为Set

values()方法将所有的值转化为List

通过这两种方法将Map转化为Collection类。

三。Vector类

Vector类与ArrayList类、LinkedList类似,不同点在于Vector类时线程同步的。如果需要线程之间互不干扰,用Vector类是最好的。

3.1Vector类的构造器

Vector():创建一个空的Vector类对象,初始容量为10,容量增量为0

Vector(Collection c):根据Collection c创建一个Vector类对象

Vector(int initialCapacity):创建一个Vector类对象,初始容量为initialCapacity,增量为0

Vector(int initialCapacity,int capacityIcrement):创建一个Vector类对象,初始容量为initialCapacity,容量增量为capacityIncrement

3.2常用方法

int size():返回元素的数量,需要与capacity()方法区分开,后者返回的是容量,即最多可容纳的数量

boolean isEmpty():判断是否为空

void clear():删除所有的元素

boolean add(Object element):增加元素

 Object remove(int index);删除指定索引的元素

Object get(int index):返回指定索引的元素

Object set(int index,Object elemen):指定索引位置设置特定元素

int indexOf(Object element):返回指定元素的索引

addElement():增加元素到Vector对象的末尾处

insertElementAt(int index):在指定索引位置插入元素

setElementAt(Object element,int index):指定索引位置设定特定对象

elementAt(int index):获得指定索引位置的元素

firstElement():获得第一个元素

lastElement():获得最后一个元素

removeAllElement():删除所有元素,同clear()方法

copyInto(Object[] array):将所有元素复制到一个数组

setSize(int newSize):根据newSize值设定新容量