现在流行用什么做网站,学做网站培训班要多少钱,物联网网站开发公司,搜索引擎排名原理前言 list 列表类型用来存储多个有的字符串#xff0c;其结构就类似于 双端队列#xff1b; 可以在队列两端插入和删除、可以获取指定范围的元素列表、获取指定索引下标的元素。列表类型的特点 #xff1a; 列表中的元素是有序的#xff0c;可以通过下标获取某个元素或者某…前言list 列表类型用来存储多个有的字符串其结构就类似于 双端队列可以在队列两端插入和删除、可以获取指定范围的元素列表、获取指定索引下标的元素。列表类型的特点列表中的元素是有序的可以通过下标获取某个元素或者某个范围的元素列表列表中的元素是允许重复的基本命令添加LPUSHlpush key element [element...]在 list 列表左侧添加一个或多个元素RPUSHrpush key element [element...]在 list 列表右侧添加一个或多个元素LINSERTlinsert key [before | after] pivot element在 指定元素 之前/之后 插入一个元素当 list 列表中 存在多个 pivot 元素时默认在第一个pivot元素之前或者之后插入lpushx / rpushxlpush、rpush命令当 key 不存在时会 添加一个新的 key然后再添加元素lpushx、rpushx 命令当 key 不存在时就添加失败不会添加一个新的 key。lpushx key element [element...] rpushx key element [element...]查找lrangelrange key start end获取 list 列表中对应区间的元素lindexlindex key index根据 索引 index 获取对应的元素llenllen key获取 list 列表中的元素个数删除lpoplpop key从 list 列表左侧删除一个或者多个rpoprpop key [count]从 list 列表右侧删除一个或者多个元素lremlrem key count value删除任意个 valuecount0 从 list 列表左侧删除 count 个value0 从 list 列表右侧删除 |count| 个value0 删除 list 列表中所有的 valueltrimltrim key start end只保留 list列表中区间[start, end] 的元素这里startend指的都是下标从0开始修改lsetlset key index value根据下标索引设置对应的值阻塞blpopblpop key [key...] timeout阻塞版本的 lpop可以等待多个keybrpopbrpop key [key...] timeout阻塞版本的 rpop可以等待多个key当 key 对应 list 列表存在元素时阻塞版本的blpop/brpop和lpop/rpop 没有区别当 key 对应的 list 列表不存在元素时blpop/brpop 阻塞等待时间timeout而 lpop/rpop 直接返回内部编码双重编码策略ziplist与linkedlistRedis为List设计了两种内部编码会根据数据特性自动选择ziplist 压缩列表linkedlist 双向链表简单来说当 list 列表中所有字符串元素长度比较小、且元素个数比较少时就采用 ziplist当list 列表中存储字符串元素长度比较大或者元素个数比较多时就采用 linkedlistquicklist从Redis 3.2开始List的默认编码改为了quicklist。quicklist是ziplist和linkedlist的混合体它是一个双向链表但每个节点都是一个ziplist。这样既保留了ziplist的内存效率又获得了linkedlist的插入性能。本篇文章到这里就结束了感谢支持我的博客即将同步至腾讯云开发者社区邀请大家一同入驻https://cloud.tencent.com/developer/support-plan?invite_code2oul0hvapjsws