Implement Stack in Java

public class Stack {
	private int[] data;
	private int size = 0;
	private int capacity = 100;
	public Stack() {
		data = new int[capacity];
}
	public boolean push(int val) {
		if(size == capacity) {
			capacity = size * 2;
			int[] arr = new int[capacity];
			System.arraycopy(data, 0, arr, 0, size);
			data = arr;
		}
		data[size++] = val;
		return true;
	}

	public int pop() {
		if(size == 0) throw new Exception(“empty stack”);
		int val = data[size-1];
		size--;
		return val;
	}

	public int size() {
		return size;
	}
}

猜你喜欢

转载自yuanhsh.iteye.com/blog/2211700