一个简单容器类的实现(一)

容器就是能装各种类型的数据的,可以把它想象成生活中的篮子,可以往里面放香蕉,也可以往里面放桔子等等。

实现一个容器类很自然的想法就是要有一个往里放东西的方法,即add()方法,添加什么东西呢?用一个Object对象作为add方法的参数。

代码如下:

package cn.edu.ustc.dp.iterater;
/*
 * 实现了一个简单的容器ArrayList
 * 底层实现是数组,但是与数组相比的优点是长度可以动态扩展!
 * 
 */
public class ArrayList {
	public int index = 0;
	Object[] objects = new Object[10];
	public void add(Object o){
		//当index超出最初定义数组的长度时,自动扩容
		if(index == objects.length){
			Object[] newObjects = new Object[objects.length * 2];
			objects = newObjects;
		}
		objects[index] = o;
		index++;
	}
	public int size(){
		return index;
	}
}

这样我们就实现了一个简单的ArrayList容器,在上面的程序中我们只实现了一个往“篮子”里放东西的add方法,和一个查看“篮子”里装了多少东西的size方法。

你可能感兴趣的:(设计模式)