java栈结构的增删查

原创 2018年04月15日 11:52:48


接口的使用

public interface Stack {



public void push(Object obj)throws Exception;

public Object pop()throws Exception;

public Object getTop()throws Exception;

public void getAll()throws Exception;


}


import java.util.Scanner;


public class StackTest implements Stack{


final int defaulttop=10;
int maxtop;
int top;
Object[] Stack;
public void init(int i){
maxtop=i;
top=0;
Stack=new Object[i];
}
public StackTest(){
init(defaulttop);
}
public StackTest(int i){
init(i);
}



public static void main(String[] args) throws Exception {
 StackTest stack=new StackTest();
Scanner input=new Scanner(System.in);
  int num;
  int i;
  String obj;
  int array[]={1,2,3,4,5,6};
  do {
  System.out.println("1.进栈2.退栈3。查看4.查看全部");
  num= input.nextInt();
  switch (num) {
case 1:
for(int j=0;j<array.length;j++){
stack.push(array[j]);
}

break;
         case 2:
        stack.pop();
          break;
         case 3:
          System.out.println(stack.getTop());
          break;
         case 4:
          stack.getAll();
           break;
           
default:
break;
}

} while (num<5);
}


@Override
public void push(Object obj) throws Exception {
if (top==maxtop) {
throw new Exception("栈已满");
}
Stack[top]=obj;
top++;

}


@Override
public Object pop() throws Exception {
if (top==0) {
throw new Exception("栈已空");

}
top--;
return Stack[top];  //被删除的那个
}


@Override
public Object getTop() throws Exception {
if (top==0) {
throw new Exception("栈已空");
}
return Stack[top-1];
}


@Override
public void getAll() throws Exception {
for(int j=top;j>0;j--){
System.out.println(Stack[j-1]);
}

}


}

java链表结构(单向、双向的增删改查)

链表介绍 链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer)。 链表与数组的区别 链表和...
  • pengkv
  • pengkv
  • 2015-05-08 10:51:46
  • 1769

Java实现栈结构详细代码

一、什么是栈结构 栈结构就是一种线性结构。 分类: 1.顺序栈结构  (数组)      2.链式栈结构  (链表) 特点:后进先出 基本操作:        1.出栈(POP) 2...
  • whieenz
  • whieenz
  • 2016-04-05 15:10:08
  • 1392

JSP程序增删修查jsp例题

  • 2009年06月30日 16:33
  • 243KB
  • 下载

双向循环链表的增删查操作

 双向循环链表的增删查操作 typedef structDNode {     ElemType data; struct DNode *prior, *next; }DNode, *...
  • jeff_0825
  • jeff_0825
  • 2015-10-14 11:53:12
  • 300

java实现栈结构

栈的定义         栈(Stack)是限制仅在表的一端进行插入和删除运算的线性表。       (1)通常称插入、删除的这一端为栈顶 (Top),另一端称为栈底 (Bottom)。 ...
  • caiwenfeng_for_23
  • caiwenfeng_for_23
  • 2013-01-12 14:30:04
  • 25337

xml对ADO数据增删该查

  • 2008年10月11日 21:37
  • 83KB
  • 下载

班级管理增删该查和登录的简单代码

  • 2010年12月22日 19:53
  • 1.28MB
  • 下载

struts2+spring+ibaits 增删查Demo

  • 2012年06月28日 11:30
  • 13.49MB
  • 下载

gridview的增删

  • 2008年06月03日 14:48
  • 402KB
  • 下载

增删查

tbody tr:nth-child(even)    {              background: #00000;             }             tbody t...
  • nyf19980311
  • nyf19980311
  • 2017-12-21 11:35:14
  • 65
收藏助手
不良信息举报
您举报文章:java栈结构的增删查
举报原因:
原因补充:

(最多只允许输入30个字)