首页 > 代码库 > Java数据结构学习系列之——数组(1)
Java数据结构学习系列之——数组(1)
import javax.management.RuntimeErrorException; public class MyArray { private long array[]; private int elements;//用于记录数组中实际数据的个数 public MyArray(){ array=new long[50];//数组默认长度为50; } public MyArray(int capacity){//设置数组的默认长度 array=new long[capacity]; } /** * 在数组末尾增加元素 */ public void add(long data){ if(elements>array.length){ throw new ArrayIndexOutOfBoundsException(); } array[elements]=data; elements++; } /** * 在index处插入元素data */ public void insert(int index,long data){ if(index>=array.length||index<0){ throw new IndexOutOfBoundsException(); } if(elements>array.length-1){ throw new ArrayIndexOutOfBoundsException(); } for(int i=elements;i>=index;i--){ array[i+1]=array[i]; } array[index]=data; elements++; } /** * 删除index处的元素 * @param index */ public void delete(int index){ if(index>=array.length||index<0){ throw new IndexOutOfBoundsException(); } for(int i=index;i<=elements;i++){ array[i]=array[i+1]; } elements--; } /** * 删除元素data * @param data */ public void delete(long data){ int addr=search(data); if(addr==-1){ System.out.println(data+"不存在"); }else{ for(int i=addr;i<=elements;i++){ array[i]=array[i+1]; } elements--; } } /** * 将index处的元素更新为newdata * @param index * @param newdata */ public void update(int index,long newdata){ if(index>=array.length||index<0){ throw new IndexOutOfBoundsException(); } array[index]=newdata; } /** * 查找index处的元素 * @param index * @return */ public long search(int index){ if(index>=array.length||index<0){ throw new IndexOutOfBoundsException(); } return array[index]; } public int search(long data){ int i; for(i=0;i<=elements;i++){ if(array[i]==data){ return i; } } return -1; } /** * 打印数组中的内容 */ public void display(){ System.out.print("["); for(int i=0;i<elements-1;i++){ System.out.print(array[i]+","); } System.out.print(array[elements-1]); System.out.println("]"); } }
Java数据结构学习系列之——数组(1)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。