package chaolong;
import java.util.Scanner;
public class Ak
{
private int[] stack; //栈数据成员
private int m; //栈的位置指针
public Ak(int a)
{
stack=new int[a]; //设置栈的容量
m=-1; //为一个空栈,所以栈指针设置为-1
}
public void pop() //出栈函数
{
if(m==-1)
{
System.out.println("栈为空栈无可删除的元素");
return;
}
System.out.println("请输入你要出栈的元素个数");
Scanner in=new Scanner(System.in);
int a=in.nextInt();
m-=a; //直接将指针前移就表示删除元素了
}
public void push()
{
if(m==stack.length-1)
{
System.out.println("栈已满无空间添加元素");
return;
}
else {
System.out.println("请输入你要入栈的元素个数");
Scanner in=new Scanner(System.in);
int a=in.nextInt();
while(m+a>stack.length-1)
{
System.out.println("你要插入的元素个数过多空间不够请重新输入:");
a=in.nextInt();
}
System.out.println("请输入你要插入的数据:");
for(int i=1;i<=a;i++)
{
stack[m+1]=in.nextInt();
m++;
}
}
}
public void readAllStack()
{
for(int i=0;i<=m;i++)
{
System.out.print("| "+stack[i]+" |");
}
System.out.println();
}
public static void main(String[] args)
{
Ak a=new Ak(10); //创建一个容量为10的一个栈
a.push();
a.readAllStack();
a.pop();
a.readAllStack();
}
}