java中的stack
来源:互联网 发布:傲剑境界升级数据 编辑:程序博客网 时间:2024/06/08 19:54
最近在学java中的对象,然后了解到通过java的对象的封装可以实现对其用户不需了解里面具体是怎么去实现的,这也是面向对象的思想;即一切由程序员实现,客户只需要知道怎么操作就可以了!!!不需了解具体实现;
就好像我们用java里面的库函数一样,设计和写库函数的是程序员,而我们编程用到里面的库函数的时候,我们并不了解它们是怎么去实现的我们此时就是客户:
下面给出一个例子就是模仿实现Stack的过程!
<span style="font-size:18px;">package stack; //此类为内部操作,用户看不到public class StackofIntger { private int[] elements; private int size = 0; public static final int DEFAULT_SIZE = 10; StackofIntger(int firstsize) { elements = new int[firstsize]; } public boolean empty() { return size == 0; } public int getTop() { return elements[size - 1]; } public void push(int value) { if (size >= elements.length) { //空间不足重新申请空间 int [] temp = new int[elements.length * 2]; System.arraycopy(elements, 0, temp, 0, elements.length); elements = temp; } elements[size++] = value; } public int pop() { return elements[--size]; } public int getSize() { return size; } }</span>--------------------------------------------------------------------------------------------------------------------------------------------------------
-
<span style="font-size:18px;">package stack; //用户界面public class TestOfStack {public static void main(String[] args) {StackofIntger s = new StackofIntger(20);for (int i = 0; i < 10; i++) {s.push(i);}while (!s.empty()) {System.out.print(s.pop() + " ");}}}</span>
----------------------------------------------------------------------------------------------------------------------------------------------------------
用类来实现对对象的存储stack
<span style="font-size:18px;">package testClass;import java.util.ArrayList;public class Mystack {private ArrayList<Object> List = new ArrayList<>(); //用ArrayList来进行自定义stack类用来存储对象public boolean isEmpty() {return List.isEmpty();}public int getSize() {return List.size();}public Object peek() {return List.get(List.size() - 1);}public Object pop(){Object o = List.get(List.size() - 1); List.remove(List.size() - 1); return o;}public void push(Object o) {List.add(o);}}</span>
0 0
- java中的STACK
- 《java中的 Stack类》
- java中的Stack
- Java中的栈Stack
- java中的Stack使用
- java中的stack
- java中的Stack类
- Java中的Stack
- java中的Heap 和 Stack
- Java中的Heap和Stack
- Java中的Heap和Stack
- Java中的Heap和Stack
- java中的stack和heap
- Java中的Heap和Stack
- Java中的Heap和Stack
- 小心Java中的Stack类
- Java中的stack和heap
- Java中的Heap和Stack
- MySQL左连接、右连接、笛卡尔积的表现形式
- 数据存储----------------SDcard
- python 模拟登陆leetcode
- uoj171 bzoj 4405: [wc2016]挑战NPC 一般图最大匹配
- Uva 11426 - GCD - Extreme (II) 欧拉函数
- java中的stack
- datagrid页面获取表单一条数据的例子
- Android学习之ItemTouchHelper实现RecylerView的拖拽以及滑动删除功能
- 线程安全问题一定是出现在共享数据上
- hdu 3172(并查集+hash)
- PHP如何判断一个元素是否在已知数组中
- OpenCV学习笔记(25)基于MFC和OpenCV的摄像机定标与立体匹配测试程序(20140505更新)
- 闭包的循环引用问题
- Circumventing Group Policy Settings