package com.kk.Collection;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class ArrayListTest {
public static void main(String[] args) {
Point p1=new Point(1,3);
Point p2=new Point(2,2);
Point p3=new Point(3,1);
List list=new ArrayList();
list.add(p1);
list.add(p3);
list.add(p2);
System.out.println(list);//AbstractCollection类已经对Object的toString方法进行了重写,会打印出list中的所有元素
Object[] s=list.toArray(); //将list转化为固定数组
for(Object point:s){
System.out.println(point);
}
List list2=java.util.Arrays.asList(s); //将固定数组转为List
//list2.add(new Point()); 这个数组的长度已经固定,不能再增加元素,也不能remove.
list2.set(0, null);//可以覆盖数组中的元素
Iterator it=list.iterator();//通过迭代器打印list中的每一个数组
while(it.hasNext())
System.out.println(it.next());
}
}
class Point {
int x;
int y;
public int getX() {
return x;
}
public void setX(int x) {
this.x = x;
}
public int getY() {
return y;
}
public void setY(int y) {
this.y = y;
}
public Point() {
super();
}
public Point(int x, int y) {
this.x = x;
this.y = y;
}
@Override
public String toString() {
return "x="+x+"y="+y;
}
}