集合框架系列List (四) Stack原始碼分析

2021-10-04 02:59:18 字數 607 閱讀 9758

目錄

1 概述

2 原始碼分析

stack 是先進後出的棧結構,其並不直接實現具體的邏輯,而是通過繼承 vector 類,呼叫 vector 類的方法實現。

public

class stackextends vector

stack 類**非常簡單,其有 3 個核心方法:push、pop、peek。

public

e push(e item)

可以看到 push 方法直接呼叫 vector 的 addelement 方法將元素插入陣列尾部

public

synchronized

e pop()

pop 方法呼叫 vector 的 removeelementat 方法,刪除了乙個元素。要注意的是,其刪除的是陣列最後乙個元素,而不是第乙個元素。

public

synchronized

e peek()

peek 方法直接返回列表最後乙個元素。

stack 方法**真的是非常簡單,其利用 vector 實現了乙個執行緒安全的棧結構。總的來說,其有以下特點:

list 集合框架

集合框架中提供了乙個內部類專門操作集合中的元素,這個內部類就是迭代器 資料結構 集合框架的由來 資料多了用物件進行儲存,物件多了用集合來進行儲存。而儲存資料的方式 資料結構 各有不同,所以儲存的容器也就有多種,從而形成了集合框架這一體系。集合父類 list介面 集合子類 arraylist vect...

list集合框架

集合框架的由來 資料多了用物件進行儲存,物件多了用集合來進行儲存。而儲存資料的方式 資料結構 各有不同,所以儲存的容器也就有多種,從而形成了集合框架這一體系 集合的的三種遍歷方式 foreach,迭代器 collection c new arraylist c.add 23 c.add 22 c.a...

集合框架 List

list arraylis 以陣列為底層,記憶體分配連續的記憶體空間,遍歷與訪問的效率高 建立arraylist物件進行一系列的操作 不指定型別建立 arraylist arraylist new arraylist 指定型別建立 arraylist new arraylist 構造方法可以指定建立...