?1
//
棧四個(gè)方法分別是:
?2
????
//
--判斷棧是否為空
?3
????
//
--獲得棧頂數(shù)據(jù)項(xiàng)而沒(méi)有刪除
?4
????
//
--任意數(shù)據(jù)項(xiàng)入棧
?5
????
//
--獲得并刪除棧頂元素
?6
????
?7
????
public
?
interface
?CountStack?
?8
????
{?
?9
????????
10
????????
boolean
?isEmpty?();
11
????????
12
????????Object?peek?();?
13
????????
14
????????
void
?push?(Object?o);?
15
????????
16
????????Object?pop?();?
17
????}
18
19
//
實(shí)現(xiàn)接口
20
21
public
?
class
?CountViewArrayStack?
implements
?CountViewStack
{
22
????
23
????????
private
?
int
?top?
=
?
-
1
;?
24
????
25
????????
private
?Object[]?stack;?
26
27
????????
public
?CountViewArrayStack(
int
?maxElements)?
28
????
29
????????
{???
30
????????????stack?
=
?
new
?Object[maxElements];
31
????????}
?
32
????????
33
????????
public
?
boolean
?isEmpty?()
34
????????
{
35
????????????
return
?top?
==
?
-
1
;
36
????????}
37
????????
38
????????
public
?Object?peek()?
39
????
40
????????
{?
41
????????????
if
?(top?
<
?
0
)??
42
????????????
throw
?
new
?java.util.EmptyStackException();?
43
????????????
return
?stack[top];
44
????????}
?
45
46
????????
public
?
void
?push(Object?o)?
47
????
48
????????
{?
49
????????????
if
?(top?
==
?stack.length?
-
?
1
)?????
50
????????????
throw
?
new
?FullViewStackException();?
51
????????????stack[
++
top]?
=
?o;
52
????????}
?
53
54
????????
public
?Object?pop()?
55
????
56
????????
{?
57
????????????
if
?(top?
<
?
0
)??
58
????????????
throw
?
new
?java.util.EmptyStackException();?
59
????????????
return
?stack[top
--
];?
60
????????}
61
62
}

?2

?3

?4

?5

?6

?7

?8



?9

10

11

12

13

14

15

16

17

18

19

20

21



22

23

24

25

26

27

28

29



30

31

32

33

34



35

36

37

38

39

40



41

42

43

44

45

46

47

48



49

50

51

52

53

54

55

56



57

58

59

60

61

62
