Java定義棧結構,并實現(xiàn)入棧、出棧操作完整示例
本文實例講述了Java定義棧結構,并實現(xiàn)入棧、出棧操作。分享給大家供大家參考,具體如下:
package com.example.demo; import java.util.ArrayList; public class Stack { ArrayList<Object> list = new ArrayList<>(); //入棧 public void push(Object o){ list.add(o); } //出棧 public Object pop(){ Object o = list.get(list.size() - 1); list.remove(o); return o; } //棧是否為空 public boolean isEmpty(){ return list.isEmpty(); } //棧大小 public int size(){ return list.size(); } //打印棧元素 @Override public String toString(){ return String.valueOf(list); } } class main{ public static void main(String[] args) { //創(chuàng)建一個棧 Stack stack = new Stack(); //入棧 for(int i=1;i<=10;i++){ stack.push(i); } //出棧 while(!stack.isEmpty()){ System.out.println("棧:" + stack.toString() + "\t棧大小為:" + stack.size() + "\t出棧元素為:" + stack.pop()); } } }
運行結果:
棧:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 棧大小為:10 出棧元素為:10
棧:[1, 2, 3, 4, 5, 6, 7, 8, 9] 棧大小為:9 出棧元素為:9
棧:[1, 2, 3, 4, 5, 6, 7, 8] 棧大小為:8 出棧元素為:8
棧:[1, 2, 3, 4, 5, 6, 7] 棧大小為:7 出棧元素為:7
棧:[1, 2, 3, 4, 5, 6] 棧大小為:6 出棧元素為:6
棧:[1, 2, 3, 4, 5] 棧大小為:5 出棧元素為:5
棧:[1, 2, 3, 4] 棧大小為:4 出棧元素為:4
棧:[1, 2, 3] 棧大小為:3 出棧元素為:3
棧:[1, 2] 棧大小為:2 出棧元素為:2
棧:[1] 棧大小為:1 出棧元素為:1
更多關于java算法相關內容感興趣的讀者可查看本站專題:《Java數(shù)據結構與算法教程》、《Java操作DOM節(jié)點技巧總結》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設計有所幫助。
相關文章
Spring Boot 2.2 正式發(fā)布,大幅性能提升 + Java 13 支持
隨著 Spring Framework 5.2.0 成功發(fā)布之后,Spring Boot 2.2 也緊跟其后,發(fā)布了第一個版本:2.2.0。下面就來一起來看看這個版本都更新了些什么值得我們關注的內容2019-10-10使用log4j2打印mybatis的sql執(zhí)行日志方式
這篇文章主要介紹了使用log4j2打印mybatis的sql執(zhí)行日志方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-09-09spring為java.util.Properties類型的屬性進行賦值過程解析
這篇文章主要介紹了spring為java.util.Properties類型的屬性進行賦值過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-01-01