Java實現(xiàn)簡單堆棧代碼
更新時間:2016年12月05日 14:49:44 作者:FrankYou
這篇文章主要為大家詳細(xì)介紹了Java實現(xiàn)簡單堆棧代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了Java實現(xiàn)簡單堆棧的具體代碼,供大家參考,具體內(nèi)容如下
/**
* Created by Frank
*/
public class ToyStack {
/**
* 棧的最大深度
**/
protected int MAX_DEPTH = 10;
/**
* 棧的當(dāng)前深度
*/
protected int depth = 0;
/**
* 實際的棧
*/
protected int[] stack = new int[MAX_DEPTH];
/**
* push,向棧中添加一個元素
*
* @param n 待添加的整數(shù)
*/
protected void push(int n) {
if (depth == MAX_DEPTH - 1) {
throw new RuntimeException("棧已滿,無法再添加元素。");
}
stack[depth++] = n;
}
/**
* pop,返回棧頂元素并從棧中刪除
*
* @return 棧頂元素
*/
protected int pop() {
if (depth == 0) {
throw new RuntimeException("棧中元素已經(jīng)被取完,無法再取。");
}
// --depth,dept先減去1再賦值給變量dept,這樣整個棧的深度就減1了(相當(dāng)于從棧中刪除)。
return stack[--depth];
}
/**
* peek,返回棧頂元素但不從棧中刪除
*
* @return
*/
protected int peek() {
if (depth == 0) {
throw new RuntimeException("棧中元素已經(jīng)被取完,無法再取。");
}
return stack[depth - 1];
}
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot--- SpringSecurity進行注銷權(quán)限控制的配置方法
這篇文章主要介紹了SpringBoot--- SpringSecurity進行注銷,權(quán)限控制,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08
Mybatis?plus多租戶方案的實戰(zhàn)踩坑記錄
MybaitsPlus多租戶處理器是一個對于多租戶問題的解決方案,下面這篇文章主要給大家介紹了關(guān)于Mybatis?plus多租戶方案踩坑的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2021-12-12
解決IDEA springboot"spring-boot-maven-plugin"報紅問題
這篇文章主要介紹了解決IDEA springboot"spring-boot-maven-plugin"報紅問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-04-04
Apache?Hudi異步Clustering部署操作的掌握
這篇文章主要介紹了Apache?Hudi異步Clustering部署操作的掌握,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪2022-03-03
mybatis Mapper的xml文件中resultType值的使用說明
這篇文章主要介紹了mybatis Mapper的xml文件中resultType值的使用說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-10-10
nacos gateway動態(tài)路由實戰(zhàn)
這篇文章主要介紹了nacos gateway動態(tài)路由實戰(zhàn),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-09-09

