/**
* 重构自己的ArrayList
* 完成的功能有:add、remove、get、size和iterator
* @author LGQ
*
*/
/**
* 先定义一个MyList接口,内部定义要实现的功能
*/
public interface MyList {
/**
* 增加一个<br>
* 1.判断集合是否已满
* 2.没满,取当前下标,在当前位置加入一个
* @param o
* @return
*/
public void add(Object o);
/**
* 删除一个<br>
* 1.先循环遍历找这个元素
* 2.找到后将后面的元素依次向前移动
*
* @param o
*/
public void remove(Object o);
/**
* 返回指定下标的元素<br>
* 1.是否为空
* 2.找到待删除元素的下标,接着从后向前依次进行覆盖
* 3.元素个数减一
* @param index
* @return
*/
public Object get(int index);
/**
* 通过迭代方法得到迭代器
* @return
*/
public Iterator iterator();
/**
* 获取元素的个数
* @return
*/
public int size();
}
/**
* 定义迭代器的规则
* @author DELL
*
*/
public interface Iterator {
/**
* 判断当前位置的下一个为控制是否存在元素
* @return
*/
public boolean hasNext();
/**
* 取得下一个位置的元素