stack如何在java中使用

stack如何在java中使用?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

10年積累的成都網(wǎng)站制作、成都網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有蘇尼特左免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

java中stack類繼承于vector,其特性為后進(jìn)先出(lastinfirstout).

入棧和出棧實(shí)例圖:

stack如何在java中使用

實(shí)例圖的java代碼實(shí)例:

package com.lanhuigu.java.ListTest;
import java.util.Stack;
public class StackTest {
	public static void main(String[] args) {
		Stack<String> staffs = new Stack<String>();
		// 入棧順序: a,b,c,d,e 
		staffs.push("a");
		staffs.push("b");
		staffs.push("c");
		staffs.push("d");
		staffs.push("e");
		// 出棧順序: e,d,c,b,a 
		while( !staffs.isEmpty()) {
			System.out.print(staffs.pop() + " ");
		}
	}
}

程序運(yùn)行結(jié)果:

edcba

Stack類中方法:

官網(wǎng)API:

stack如何在java中使用

方法分析:

empty():判斷棧是否為空,為空返回true,否則返回false

peek():取出棧頂元素,但是不從棧中移除元素

pop():取出棧頂元素,并且將其從棧中移除

push(Eitem):元素入棧

search(Objecto):在棧中查找元素位置,位置從棧頂開(kāi)始往下算,棧頂為1,

依次往下數(shù)到所查找元素位置,如果所查找元素在棧中不存在,則返回-1。

關(guān)于這幾個(gè)方法的實(shí)例:

package com.lanhuigu.java.ListTest;
import java.util.Stack;
public class StackMethodTest {
	public static void main(String[] args) {
		Stack<String> staffs = new Stack<String>();
		// 入棧順序: a,b,c,d,e 
		staffs.push("a");
		staffs.push("b");
		staffs.push("c");
		staffs.push("d");
		staffs.push("e");
		System.out.println("empty():" + staffs.empty());
		System.out.println("peek():" + staffs.peek());
		System.out.println("search(Object o):" + staffs.search("a"));
		System.out.println("search(Object o):" + staffs.search("e"));
		System.out.println("search(Object o):" + staffs.search("no"));
		// 出棧順序: e,d,c,b,a 
		while( !staffs.isEmpty()) {
			System.out.print(staffs.pop() + " ");
		}
		System.out.println("=====空棧中使用方法=======");
		System.out.println("empty():" + staffs.empty());
		//System.out.println("peek():" + staffs.peek());// 在空棧中使用時(shí)報(bào)錯(cuò),因?yàn)闆](méi)有棧頂元素 
		System.out.println("search(Object o):" + staffs.search("a"));
		System.out.println("search(Object o):" + staffs.search("e"));
		System.out.println("search(Object o):" + staffs.search("no"));
		//System.out.print(staffs.pop());// 空棧中移除棧頂元素,報(bào)錯(cuò)
	}
}

程序運(yùn)行結(jié)果:

stack如何在java中使用

以上幾個(gè)方法是Stack繼承于Vector擴(kuò)展的方法,因?yàn)镾tack繼承于Vector,哪么Vector中的非private方法

也是Stack類的方法。

Vector中的方法,官方API_1.8:

stack如何在java中使用

關(guān)于stack如何在java中使用問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

新聞標(biāo)題:stack如何在java中使用
網(wǎng)站網(wǎng)址:http://muchs.cn/article26/piopcg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、網(wǎng)站營(yíng)銷自適應(yīng)網(wǎng)站、用戶體驗(yàn)搜索引擎優(yōu)化、微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)