ArrayList Java实现
来源:互联网 发布:淘宝网店海报分辨率 编辑:程序博客网 时间:2024/06/08 19:50
public class arrayList<E> implements Iterable<E>{private Object[]data=null;private int capacity;private int currentsize;arrayList(){this(10);}arrayList(int initialsize){if(initialsize>0){this.capacity=initialsize;this.currentsize=0;data=new Object[initialsize];}else{throw new RuntimeException("初始化大小不能为0"+initialsize);}}private void ensureCapacity(){int index;if(currentsize>=capacity){capacity=capacity*2;Object []newdata=new Object[capacity];for(index=0;index<currentsize;index++){newdata[index]=data[index];}data=newdata;}}private void validateIndex(int index){if(index<0||index>currentsize-1)throw new RuntimeException("无效的下标"+index);}public int size(){return currentsize;}public boolean set(int index,E elem){validateIndex(index);data[index-1]=elem;return true;}/** * * @param elem * @return */public boolean addElement(E elem){ensureCapacity();data[currentsize]=elem;currentsize++;return true;}/** * * @param index * @param elem * @return */public boolean insert(int index,E elem){validateIndex(index);currentsize++;ensureCapacity();data[index-1]=elem;for(int i=(currentsize-1);i>=index;i--){data[i]=data[i-1];}return true;}/** * * @param index * @return element */public E getElement(int index){validateIndex(index);return (E)data[index-1];}public boolean delete(int index){validateIndex(index);for(int i=index;i<currentsize;i++)data[i-1]=data[i];data[currentsize--]=null;return true;}public java.util.Iterator<E> iterator(){return new ArrayListIterator<E>();}class ArrayListIterator<E>implements java.util.Iterator{private int current=0;public boolean hasNext(){return current<size();}public E next(){if(!hasNext())throw new java.util.NoSuchElementException();return (E) data[current++];}public void remove(){arrayList.this.delete(current+1);current--;}}}
没有进行验证
阅读全文
0 0
- ArrayList Java实现
- java 之ArrayList实现
- 实现Java中的ArrayList
- ArrayList底层实现(JAVA)
- java ArrayList 的实现
- java ArrayList实现原理
- java ArrayList源代码实现
- JAVA--自己实现ArrayList
- ArrayList Java实现
- Java Arraylist实现原理.
- 手写实现Java ArrayList实现
- 简单实现Java中的ArrayList
- java中ArrayList的实现
- Java ArrayList 的insert实现
- 数据结构--ArrayList的Java实现
- Java集合-ArrayList 实现原理
- Java用ArrayList实现队列
- Java用ArrayList实现栈
- 【代码片-1】 XCode(Objective-C) + Mysql 配置与开发
- 如何安装centOS,镜像选择,安装centOS报错,U盘安装centOS
- 关于时间的一些转化
- 如何突破限制,在PC上调试微信手机页面
- find the most comfortable road
- ArrayList Java实现
- 文件下载
- github建立远程仓库
- 在object-c 中调用c,c++接口
- 离散优化题目—— viojs1056 图形面积 详解
- 使用python读取csv文件快速插入数据库
- 大数据浪潮:平凡而又神奇的贝叶斯方法
- spring对JDBC的支持
- Java枚举使用详解