Arraylist类,ArrayList类是实现了List接口,此接口提供了get()方法;而且list接口是从Connection 接口中继承而来,从Connection 继承的接口有两个,分别是set 和List。
我们可以把Arraylist 看作能够自动增长的数组,其实它就是一个列表,我们可以向一个列表中添加任何类型的元素,如下程序,我们用它的add()方法给此对象增加元素,最后又用打印语句把这几个元素打印到屏幕上,其中al.size()方法是用来获取ArrayList对象的大小的!
我们还可以直接打印al对象,因为al可以看成是一个数组,而直接打印就相当于从数组的0位置开始全部打印出来,只是这样的打印出来和用循环的方法打印出来的形式不一样,用循环打印出来的形式是:
weisang
haha
weihaohi
而我们直接打印出来的形式是[weisang,haha,weihaohi]。因为在ArrayList类中也重写了toString方法,为了让点的坐标打印出来一目了然我们也在point 类中、rewrite toString() method
ArrayList 类是存在于java.util包中的,所以我们必须倒入此包的ArrayList类,也可以将这个包的全部类都导入,但是我是不建议这样作的,任何省事的方式都要付出代价的,这样程序员是轻松了但是会给计算机带来很大的负担,让计算机去检索,需要花费额外的时间。
我们还可以用ArrayList中的toArray()方法把列表转化成对象数组,如下所示,
还可以把数组转化成列表,这时就得用到Arrays.asList(object)方法,此方法存在于Arrays类中,且为静态的,所以可以直接引用,而且它将数组转化成固定大小的列表,转化后不可再给列表中增加元素,
这一点是很值得注意的,
import java.util.Arrays;
import java.util.ArrayList;
import java.util.List;
class ArrayListTest
{
private static void printElement(Connection c)
{
Iterator it=c.iterater();
while(it.hasnext())
{
System.out.println(it.next());
}
}
public static void main(String args[])
{
ArrayList al=new ArrayList();
al.add("weisang");
al.add("haha");
al.add("weihaohi");
al.add(new Point(1,1));
al.add(new Point(1,1));
al.add(new Point(1,1));
for(int i=0;i