列表型別可以儲存乙個有序的字串列表,常用的操作是向列表的兩端新增元素,或者獲取列表的乙個片段;
與雜湊型別最多能容納的字段數量相同,乙個列表型別鍵最多能容納2^32-1個元素。
優點:列表型別的內部是使用(double linked list)雙向鍊錶實現的,所以像列表兩端新增元素的時間複雜度為o(1),獲取越接近兩端的元素越快。(意味著即使列表中的資料量再大,獲取前十條資料也是非常快的)
缺點:使用的鍊錶的代價是通過索引訪問元素會非常的緩慢。
社交網路中的新鮮事:即使新鮮事的總數達到了幾千萬條,獲取其中最新的100條資料也是非常快速的。
記錄日誌:可以保證加入新日誌的速度不會受到已有日誌數量的影響。
用作訊息佇列:點此進入
1.像列表兩端新增元素
lpush key value [ value... ]
rpush key value [value ...]
2.從列表兩端彈出元素
lpop key
rpop key
3.獲取列表中元素的個數(時間複雜度為o(1))
llen key
4.獲取列表片段
lrange key start end
注:在redis中,使用0表示從左邊數第乙個元素,使用-1表示從右邊數第乙個元素。所以lrange key 0 -1 表示獲取列表中所有元素。
5.刪除列表中指定的值
lrem key count value
(1)當count>0時,從列表左邊開始刪除前count個值為value的元素;
(2)當count<0時,從列表右邊開始刪除前|count|個值為value的元素;
(3)當count=0時,刪除列表中所有值為value的元素。
6.獲得/設定指定索引出的元素值
lindex key value
lset key index value
7.保留指定範圍的列表片段(刪除指定索引範圍之外的所有元素)
ltrim key start end
8.插入元素
linsert key before|after pivot value
在列表中從左到右查詢出值為pivot的元素,然後根據before或者after決定插入到該元素的前邊還是後邊,返回插入後列表中元素的個數。
9.將元素從乙個列表轉到另乙個列表
ppoplpush source destination
從source列表的右邊彈出元素並將該元素lpush到destination列表的左邊,返回這個元素的值。
Redis 學習筆記 3 4 列表型別
列表型別 list 可以儲存乙個有序的字串列表,常用的操作是向列表的兩端新增元素,或者獲得列表的某乙個片段。它的內部實現是雙向鍊錶,向頭尾兩端處理元素特別方便。適合的場景像是社交 的新鮮事,日誌記錄,關心尾部節點,不擔心舊有記錄的刪除調整情況。redis 的列表型別還可以用來實現佇列,並且支援阻塞式...
Css基礎學習(六) 列表
瀏覽任何基於web標準建立的 資源,幾乎都可以看到乙個導航列表 乙個外部鏈結列表 有的還有按鈕列表和陣列列表。設計開始階段就採用簡單的列表可保證設計的靈活性和各種功能,並且可以在某些瀏覽場景下簡化設計。1 list style type屬性 list style type屬性可以從多個可能的列表專案...
Redis學習(十) 列表 List
redis列表是簡單的字串列表,按照插入順序排序。你可以新增乙個元素到列表的頭部 左邊 或者尾部 右邊 乙個列表最多可以包含 232 1 個元素 4294967295,每個列表超過40億個元素 redis 127.0.0.1 6379 lpush runoobkey redis integer 1r...