Redis的使用(三) Redis列表List

目录

1. 什么是列表

2. 命令使用

2.1 LPUSH/RPUSH推入值

2.2 LPOP/RPOP弹出值

2.3 LLEN获取列表长度

2.4 LINDEX指定索引

2.5 LRANGE指定索引范围

2.6 LSET设置指定索引上的值

2.7 LINSERT插入值

2.8 LREM删除指定的值

2.9 LTRIM修减列表

2.10 BLPOP/BRPOP阻塞弹出


1. 什么是列表

从菜鸟教程看到Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)。举个例子:

2. 命令使用

2.1 LPUSH/RPUSH推入值

LPUSH key value [value ...]:从左边推入,命令返回新值被推入之后,列表目前包含的项数量。

RPUSH key value [value ...]:从右边推入,命令返回新值被推入之后,列表目前包含的项数量。

lpush kt '格力'
rpush kt '美的'
lpush kt '海尔'

执行以上命令后,查看结果:

推入多个值的时候需要注意的是,如果是LPUSH推入,那么推入顺序与命令顺序相反,如果使用RPUST命令,那么推入顺序和命令上的顺序一致。

lpush kt 'l海尔1' 'l海尔2' 'l海尔3'
rpush kt 'r海尔1' 'r海尔2' 'r海尔3'

2.2 LPOP/RPOP弹出值

LOPO key:移出并返回最左边的顶

RPOP key:移出并返回最右边的顶

lpop kt
rpop kt

查看结果:

2.3 LLEN获取列表长度

LLEN key:返回列表长度

2.4 LINDEX指定索引

LINDEX key index:返回指定index索引上的值,index索引值可以是正数也可以是负数。

2.5 LRANGE指定索引范围

LRANGE key start stop:返回从start开始到stop结束的值,start、stop可正可负(闭区间)。

2.6 LSET设置指定索引上的值

LSET key index value:将index索引上的值设置为value,设置成功返回ok,失败返回错误。

2.7 LINSERT插入值

LINSERT key BEFORE|AFTER 参考点 value:BEFORE表示在参考点之前插入value,AFTER表示在参考点之后插入。如果指定的参考点不存在,则不执行操作。返回结果为0表示key不存在,返回结果为-1表示参考点不存在,插入成功返回列表长度。

查看结果:

2.8 LREM删除指定的值

LREM key count value:根据count的值删除列表中值为value的项,返回被移出的数量。

• 如果 count > 0 ,那么从表头开始向表尾搜索,移除最多 count 个值为 value 的列表项。
• 如果 count < 0 ,那么从表尾开始向表 头搜索,移除最多 abs(count) 个值为 value 的列表项。
• 如果 count = 0 ,那么移除列表中所有 值为 value 的列表项。

2.9 LTRIM修减列表

LTRIM key start stop:修减列表,只保存从start到stop中的值,其他的删除,start、stop可正可负。命令执行成功返回ok。

2.10 BLPOP/BRPOP阻塞弹出

BLOPO key time:命合会以从左到右的顺序,访问给定的各个列表,并弹出首个非空列表最左端的项;如果所有给定列表都为空,那么客户端捋被阻塞,直到等待超时,或者有可弹出的项出现为止;设置 time参数为0表示永远阻塞。

BROPO key time:命合会以从左到右的顺序,访问给定的各个列表,并弹出首个非空列表最右端的项;如果所有给定列表都为空,那么客户端捋被阻塞,直到等待超时,或者有可弹出的项出现为止;设置time参数为0表示永远阻塞。

本节类容到此结束

本人联系方式2329095893,欢迎各位进行学习讨论

欢迎关注熊熊出没ING公众号,不定时跟新Java、python、信息安全等相关知识哦。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值