public class MyArray {
private long[] arr;//表示有效数据的长度
private int elements;//数组长度
public static void main(String[] args){
}
public MyArray(){
arr=new long[50];
}
public MyArray(int maxsize){//定义数组长度
arr=new long[maxsize];
}
/*
* 插入数据
* */
public void insert(long value){
arr[elements]=value;
elements++;
}
public void display(){
System.out.print("[");
for(int i=0;i<elements;i++){
System.out.print(arr[i]+" ");
}
System.out.println("]");
}
/*
* 表示这个数据查不到
*
* */
public int search(long value){
int i;
for(i=0;i<elements;i++){
if(value==arr[i]){
break;
}
}
if(i==elements){
return -1;
}else{
return i;
}
}
/*
* 数据查询,根据索引来查
*
* */
public long get(int index){
if(index>=elements||index<0){
throw new ArrayIndexOutOfBoundsException();
}else{
return arr[index];
}
}
/*
* 删除数据
*
* */
public void delete(int index){
if(index>=elements||index<0){
throw new ArrayIndexOutOfBoundsException();
}else{
for(int i=index;i<elements;i++){
arr[i]=arr[i+1];
}
elements--;
}
}
/*
* 更新数据
* */
public void change(int index,int newvalue){
if(index>=elements||index<0){
throw new ArrayIndexOutOfBoundsException();
}else{
arr[index]=newvalue;
}
}
}
public class TestArray {
public static void main(String[] args){
MyArray arr=new MyArray();
arr.insert(13);
arr.insert(34);
arr.insert(90);
arr.insert(111);
arr.display();
//查询,查询结果返回的是数组的索引
System.out.println(arr.search(13));
//根据索引查询,查询结果返回的是值
System.out.println(arr.get(2));
//删除
arr.delete(1);
arr.display();
//更新
arr.change(1, 666);
arr.display();
}
}