欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java定義棧結構,并實現(xiàn)入棧、出棧操作完整示例

 更新時間:2020年02月05日 12:00:24   作者:緣故為何  
這篇文章主要介紹了Java定義棧結構,并實現(xiàn)入棧、出棧操作,結合完整實例形式分析了java數(shù)據結構中棧的定義、以及入棧、出棧、棧是否為空判斷、棧大小計算、打印棧元素等相關操作技巧,需要的朋友可以參考下

本文實例講述了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程序設計有所幫助。

相關文章

  • SpringBoot讀取配置文件的五種方法總結

    SpringBoot讀取配置文件的五種方法總結

    這篇文章主要為大家詳細介紹了SpringBoot讀取配置文件的五種方法,文中的示例代碼講解詳細,對我們學習SpringBoot有一定幫助,需要的可以參考一下
    2022-08-08
  • Java集合類的組織結構和繼承、實現(xiàn)關系詳解

    Java集合類的組織結構和繼承、實現(xiàn)關系詳解

    這篇文章主要介紹了Java集合類的組織結構和繼承、實現(xiàn)關系,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • Spring Boot 2.2 正式發(fā)布,大幅性能提升 + Java 13 支持

    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í)行日志方式

    這篇文章主要介紹了使用log4j2打印mybatis的sql執(zhí)行日志方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • 程序猿必須要掌握的多線程安全問題之鎖策略詳解

    程序猿必須要掌握的多線程安全問題之鎖策略詳解

    在筆者面試過程時,經常會被問到各種各樣的鎖,如樂觀鎖、讀寫鎖等等,非常繁多,在此做一個總結,介紹的內容如下,需要的朋友可以參考下
    2021-06-06
  • SpringMVC實現(xiàn)返回響應的項目實踐

    SpringMVC實現(xiàn)返回響應的項目實踐

    本文主要介紹了SpringMVC實現(xiàn)返回響應的項目實踐,包含返回靜態(tài)頁面,返回數(shù)據,返回html片段等實例,具有一定的參考價值,感興趣的可以了解一下
    2024-02-02
  • Java并發(fā)教程之volatile關鍵字詳解

    Java并發(fā)教程之volatile關鍵字詳解

    這篇文章主要給大家介紹了關于Java并發(fā)教程之volatile關鍵字的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Java具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-11-11
  • SpringBoot自定義bean綁定實現(xiàn)

    SpringBoot自定義bean綁定實現(xiàn)

    這篇文章主要介紹了SpringBoot自定義bean綁定,最常見的配置綁定的場景,是在自定義的bean中通過@Value注解將某個屬性和對應的配置綁定
    2022-10-10
  • 新手學習java反射基礎

    新手學習java反射基礎

    Java反射就是在運行狀態(tài)中,對于任意一個類,都能夠知道這個類的所有屬性和方法;對于任意一個對象,都能夠調用它的任意方法和屬性;并且能改變它的屬性。下面我們來一起學習一下吧
    2019-06-06
  • spring為java.util.Properties類型的屬性進行賦值過程解析

    spring為java.util.Properties類型的屬性進行賦值過程解析

    這篇文章主要介紹了spring為java.util.Properties類型的屬性進行賦值過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-01-01

最新評論