简化重写的一个ArrayList,简化重写ArrayList
分享于 点击 22082 次 点评:115
简化重写的一个ArrayList,简化重写ArrayList
import java.util.Arrays;/**
*
* @argument 模拟一个ArrayList 工具类
* 1 add
* 2 get
* 3 remove
*/
/*
*封装一个Object[]数组
*/
public class ArrayList {
Object[] obj ;
/*
*定义指针
*/
int pointer ;/*
*定义构造方法
*/
public ArrayList(int size){
obj = new Object[size];
}
/*
*定义初始数组大小
*/
public ArrayList(){
this(10);
}
/*
*定义add(E e)方法
*/
public <E> void add(E e){
if (pointer >= obj.length-1) {
// int capcity = obj.length + obj.length>>1;
int capcity = obj.length + obj.length/2;
obj = Arrays.copyOf(obj, capcity);
}
obj[pointer] = e;
pointer++;
}
/*
*定义get(int index)方法
*/
public Object get(int index){
if (index < obj.length && index >=0) {
return obj[index];
}
return null;
}
/*
*定义remove(int index)方法
*/
public Object[] remove(int index){
Object[] obj1 = new Object[obj.length -1];
for (int i = 0; i < obj.length-1; i++) {
if (i >= index) {
obj1[i] = obj[i+1];
}else{
obj1[i] = obj[i];
}
}
for (int i = 0; i < obj.length-1; i++) {
obj[i]= obj1[i];
}
obj[obj.length-1] = null;
pointer--;
return obj ;
}
public int size(){
return obj.length;
}
}
相关文章
- 暂无相关文章
用户点评