Java定義棧結(jié)構(gòu),并實現(xiàn)入棧、出棧操作完整示例
本文實例講述了Java定義棧結(jié)構(gòu),并實現(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());
}
}
}
運行結(jié)果:
棧:[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算法相關內(nèi)容感興趣的讀者可查看本站專題:《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設計有所幫助。
相關文章
springboot使用校驗框架validation校驗的示例
這篇文章主要介紹了springboot使用校驗框架validation校驗的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-02-02
通過實例深入學習Java的Struts框架中的OGNL表達式使用
這篇文章主要通過實例介紹了Java的Strus框架中的OGNL表達式使用,Struts框架是Java的SSH三大web開發(fā)框架之一,需要的朋友可以參考下2015-11-11

