Redis数据结构之list

Redis数据结构之list

常用命令

lpush\rpush <key> <value1> <value2> <value3>... 从左边/右边插入一个或多个值,类似推箱子。

lpop/rpop <key> 从左边/右边吐出一个值。值在键在,值光键亡

rpoplpush <key1> <key2><key1>列表右边吐出一个值,插到<key2>列表左边

lrange <key> <start> <stop> 按照索引下标获得元素(从左到右)

lindex <key> <index>按照索引下标获得元素(从左到右)

llen <key>获得列表长度

linsert <key> before/after <value> <newvalue><value>的前面或后面插入<newvalue>

lrem <key> <n> <value> 从左边删除n个value值(从左到右)

lset <key> <index> <value> 将列表key下标为index的值替换为value

数据结构

List的数据结构为快速链表quickList

首先在列表元素较少的情况下会使用一块连续的内存存储,这个结构是ziplist,即是压缩列表,它将所有的元素紧挨在一起存储,分配的是一块连续的内存。

当数据量比较多的时候才会变成quickList,多个ziplist连在一起,组成了quickList(双向链表)

 

 

 

posted @ 2022-03-17 23:38  阳光真好的博客  阅读(213)  评论(0)    收藏  举报