一文講清ArrayList的原理

2021-10-23 09:28:52 字數 1173 閱讀 1645

arraylist底層採用陣列實現,具有也具有陣列的優缺點,同時支援動態擴容(擴充套件為原來的1.5倍)。所以它非常適合需要使用索引快速訪問的場景。同時由於其自動擴容的功能,我們需要注意在初始化集合時需要指定大小。

##02    特點

## 03    具體**

最後從原始碼裡具體分析一下,arraylist中的新增(add),隨機訪問(get),刪除(remove),插入(add),擴容操作(grow)。

新增(add)****:

public boolean add(e e)
隨機訪問(get):

public e get(int index)
刪除(remove):

public e remove(int index)
插入(add):

public void add(int index, e element)
擴容(grow):

本文由部落格**一文多發等運營工具平台 openwrite 發布

一文講清HBase的儲存結構

hbase是乙個分布式的 多版本 面向列的開源kv資料庫。執行在hdfs的基礎上,支援pb級別 百萬列的資料儲存。作為效能如此強大的kv資料庫,hbase的儲存結構究竟是怎樣的呢?面向列的儲存結構究竟有什麼樣的不同之處呢?接下來會詳細講解這部分。為了清晰地表述這個,我們把hbase的儲存結構分為邏輯...

一文講清楚事務隔離性

乙個人運算元據庫的時候,其他人都看不見 其他人不能讀 mvcc 其他人不能寫 通過加鎖 鎖 read view一般由兩部分組成 排他鎖小紅對取前的時候加上了鎖 排他鎖 所以其他人不能取錢了,所以等小紅這個操作 事務 結束了,這把鎖才能解開 事務的開始時間是更新操作執行的時候 讀未提交沒有mvcc的控...

一文講清楚vim的map對映

map主用自定義快捷鍵,如 map a b 把b對映為a鍵,使之按下a的時候執行b快捷鍵 在vim配置檔案中經常會看到map nmap imap vmap vnoremap nunmap nmapclear等,都是什麼意思呢?map前的n v nore un等表示下列含義 如 nmap s wqa ...