1.成员变量
private E[] data;
private int size;
2.构造函数(生)
构造函数的形参为capacity
默认的构造函数capacity为10。
3.查询属性(查)
public int getSize();
public int getCapacity();
public boolean isEmpty();
在add和remove满足一定条件下,会触发扩容和缩容操作。
4.add(增)
public void add(int index, E e);
public void addFirst();
public void addLast();
5.remove(删)
public void remove(int index);
public void removeFirst();
public void removeLast();
6.set get(改和查,这里的查指的是查询元素)
public E get(int index);
public void set(int index, E e);
public boolean contains(E e);
public int find(E e);
7.toString 对象字符串表示
8.resize(扩或者缩容)
private void resize(int newCapacity);
曾经犯过的错误
1.构造函数中,忘记了size=0。
2.for循环中,i--忘记修改了,还是i++。
3.remove函数中,返回值是E,而不是void。
4.add函数中,扩容的条件是size==data.length,而不是index==size。
5.toString函数中,忘记写Array的基本介绍。res.append(String.format("Array: size = %d, capacity = %d\n", size, data.length));
6.for循环中,for (int i = size-1; i >= index; i--)应该是i>=而不是<=
7.缩容if(size == data.length / 4 && data.length / 2 != 0)
8.addLast的index应为size,而不是size-1
网友评论