版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/amyacker/article/details/88145133
简单实现数组
public class Array<E> {
private E[] array;
private int size;
//无参构造函数,默认容量为10
public Array(){
this(10);
}
//有参构造函数
public Array(int capacity){
array = (E[])new Object[capacity];
}
//插入元素
public void add(E e){
array[size++] = e;
}
//删除元素
public E remove(int index){
E arr = array[index];
for(int i = index;i < size;i++)
array[i] = array[i+1];
size--;
return arr;
}
//是否有该元素
public boolean contains(E e){
for(int i = 0;i < size; i++){
if(array[i].equals(e))
return true;
}
return false;
}
//查询该元素下标 没有返回-1
public int indexOf(E e){
for(int i = 0;i < size;i++)
if(array[i] == e)
return i;
return -1;
}
//获取index元素
public E get(int index){
if(index < 0|| index >= size)
throw new IllegalArgumentException();
return array[index];
}
//判空
public boolean isEmpty(){
return size==0;
}
//长度
public int size(){
return size;
}