/**
- 使用一维数组模拟栈数据结构
1、这个栈中可以存储java中的String引用类型数据
2、栈中提供push方法模拟压栈,pop方法模拟弹栈(满了,空了提供信息)
3、编写程序,new栈对象,调用pop和push方法模拟压栈弹栈
- /
//测试类
public class HomeWork1 {
//主方法
public static void main(String[] args) {
//新建一个静态数组以方便测试
String[] arrayIn = {"123","133","233"};
//创建Stack引用数据类型的引用
Stack stack1 = new Stack(3);
stack1.push(arrayIn);
//调用下面工具类中的方法遍历数组
arrayPrint.Print(stack1.stack);
/*
报错:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0
at Array.Stack.push
at Array.HomeWork1.main
*/
}
}
//Stack类
/* ... class Stack {
//规定Stack长度为number
private int number ;
String[] stack = new String[number];
//栈长度的构造方法
public Stack(int number) {
this.number = number;
}
public void push(String[] arrayIn) {
for (int i = 0 ; i < arrayIn.length ; i++) {
this.stack[i] = arrayIn[i];
}
}
// public void pop(String[] array) {}
}
//工具类
class arrayPrint{
public static void Print(String[] arrayIn) {
for (int i = 0 ; i < arrayIn.length ; i++) {
System.out.println(arrayIn[i]);
}
}
}