background image

// 记录实实在在的元素个数

private

 

int

 

elementSize

;

public

 MyArrayStack() {

objects

 = 

new

 Object[

Def_Size

];

}

/**
 * 栈顶添加元素
 * 

@param

 e

 */

public

 

void

 push(E e) {

if

 (

elementSize

 == 0) {

objects

[0] = e;

elementSize

++;

return

;

}

for

 (

int

 i = 0; i < 

objects

.

length

; i++) {

if

 (

objects

[i] == 

null

) {

objects

[i] = e;

elementSize

++;

break

;

}

}

}

/**
 * 从栈顶出元素,删除栈顶元素
 * 
 * 

@return

 */

public

 E pop() {

if

 (isEmpty()) {

throw

 

new

 RuntimeException(

"栈已经空"

);

}
E lastElement = (E) 

objects

[

elementSize

 - 1];

objects

[

elementSize

 - 1] = 

null

;

elementSize

--;

 

2

 / 

9