Java学习笔记32

Stack继承了Vector类,Stack类似于“栈”,它是一种后进先出(LIFO)的对象堆栈,通过五个操作对类Vector进行扩


展,允许将向量视为堆栈。它提供了通常的push和pop操作,以及取堆栈顶点的peek方法,测试堆栈是否为空的


empty方法、在堆栈中查找并确定到堆栈顶距离的search方法。


我们来看下图,加深对栈的理解:


                                   

根据上图,我们知道Stack类似于栈,我们将栈比喻成一个桶,底部是封住的,现在我们现将Object_1存入栈中,然


后是Object_2接着是Object_3最后是Object_4,依次存入栈中,如果现在我们想要获取栈底的元素,唯一的方法就


是先将上面的元素依次出栈,才能获取栈底元素,因此Vector是一个后进先出的栈。


以下是Vector类的使用方法:


public class Main {
	public static void main(String[] args) {
		/*
		 * 创建一个空的堆栈
		 */
		Stack stack=new Stack();
		
		/*
		 * 检测当前的堆栈是否为空(空返回true,反之返回false),以下堆栈为空
		 */
		System.out.println(stack.empty());
		
		
		//接下来将几个元素通过push入栈
		stack.push("Object_1");
		stack.push("Object_2");
		stack.push("Object_3");
		stack.push("Object_4");
		
		//现在我们在堆栈中查找指定的元素,并返回这个元素所在的位置
		//以下输出:2
		System.out.println(stack.search("Object_3"));
		
		
		/*
		 * 通过peek查看堆栈顶部的对象,但不从堆栈中移除它。
		 */
		//输出:Object_4
		System.out.println(stack.peek());
		//输出:[Object_1, Object_2, Object_3, Object_4]
		System.out.println(stack);
		
		/*
		 *通过pop 移除堆栈顶部的对象,
		 *并作为此函数的值返回该对象。
		 */
		//输出:Object_4
		System.out.println(stack.pop());
		//输出:[Object_1, Object_2, Object_3]
		System.out.println(stack);
	}
}


转载请注明出处:http://blog.csdn.net/hai_qing_xu_kong/article/details/44159585  情绪控_ 

©️2020 CSDN 皮肤主题: 猿与汪的秘密 设计师: 上身试试 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值