1、List中可以添加任何对象,包括自己定义的新的类。
-
class Person{ ..... }
-
上面定义了一个Person类,下面看好如何使用
-
List Person p1=new Person();
-
Person p2=new Person();
-
List list=new ArrayList();
-
list.add(p1);
-
list.add(p2);//这里是将对象加入到list中
-
for(int i=0;i = list.size();i++){
-
Person p=(Person)list.get(i);//注意,这里一定要强制类型转换,因为List中取出的对象都是Object类型的,希望对你有所帮助
-
}
2、List是一个接口,不能实例化,需要实例化一个ArrayList或者LinkedList
List myList = new ArrayList();
3、使用myList.add(任何对象);就可以进行添加了。
4、取值的时候myList.get(索引);取出来的值都是Object,使用时需要类型转换。
5、可用Iterator迭代器对List中的元素进行迭代操作。
List 集合中的对象按照一定的顺序排放,里面的内容可以重复。List接口实现的类:ArrayList(实现动态数组), Vector(实现动态数组) ,LinkedList(实现链表), Stack(实现堆栈)
一 list接口
1.java.util.ArrayList类实现一个可增长的动态数组,平时用的比较多的就是add()方法,其它方法 请参考API帮助文档。使用该方法向集合内添加对象,并且这些对象是按照一定的顺序排列 的,它内部原理是数组实现的,因此处理数据量较大时,不建议使用。
public class TestArrayList {
public static void main(String[] args) {
//声明List 并实例化为
ArrayList List al = new ArrayList();
//使用add()方法添加元素
al.add("a");
al.add("b");
al.add("c");
al.add("d");
//使用Iterator迭代器遍历出集合的元素并打印
for(Iterator i = al.iterator();i.hasNext(); ){
String str = (String) i.next();
System.out.println(str);
}
}
}
2.java.util.Vector(向量)类 与ArrayList类似的也是实现一个动态的数组,该向量可以随意的增长以存放更多的对象
public class TestArrayList {
public static void main(String[] args) {
//声明List 并实例化为Vector
List al = new Vector();
//使用add()方法添加对象
al.add("a");
al.add("b");
al.add("c");
al.add("d");
//使用Iterator迭代器遍历出集合的对象并打印
for(Iterator i = al.iterator();i.hasNext(); ){
String str = (String) i.next(); System.out.println(str);
}
}
}