//手写实现MyArrayList,MyLinkedList仿ArrayList,LinkedList功能
package com.helong.mylist;
//==============================================
//ArrayList
//实现它的容量自动扩充
//增删改查长度
class MyArrayList
{
private Object[] value=null;
private int size=0;
MyArrayList()
{
value=new Object[10];
}
//增加
public boolean add(Object obj)
{
if(size==value.length)
expansion();
value[size++]=obj;
return true;
}
//删除
public boolean remove(int index)
{
if(index<0||index>=size)
return false;
Object[] temp=new
Object[size-1];//使用到数组长度的地方要由size来替代,因为size才是真实的元素个数
for(int i=0,j=0;i
{
if(i!=index)
{
temp[j++]=value[i];
}
}
value=temp;
size--;
return true;
}
//内部调用remove(int index)
public boolean remove(Object obj)
{
for(int i=0;i
{
if(value[i].equals(obj))
{
remove(i);
return true;
}
}
return false;
}
//修改
public boolean set(int index,Object obj)
{
if(index<0||index>=size)
return false;
value[index]=obj;
return true;
}
//获取
public Object get(int index)
{
if(index<0||index>=size)
return null;
return value[index];