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í)例圖:
實(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:
方法分析:
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é)果:
以上幾個(gè)方法是Stack繼承于Vector擴(kuò)展的方法,因?yàn)镾tack繼承于Vector,哪么Vector中的非private方法
也是Stack類的方法。
Vector中的方法,官方API_1.8:
關(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)