Redis数据类型:列表list

Redis数据类型:列表list


Redis列表由多个字符串值组成的有序(指插入的顺序)可重复的序列,是链表结构,允许用户从两端压入或者弹出元素,所以向列表两端添加元素的时间复杂度为0(1),获取越接近两端的元素速度就越快。意味着即使是一个有几千万个元素的列表,获取头部或尾部的10条记录也是极快的。列表中可以包含的最大元素数量是4294967295。
应用场景:排行榜,消息队列。

类型操作

1.往头部压入元素。

LPUSH key value [value ...]

2.往尾部压入元素。

RPUSH key value [value ...]

3.从头部弹出一个元素。

LPOP key

4.从尾部弹出一个元素。

RPOP key

结论:同向命令(lpush/lpop或者rpush/rpop)操作时,就是栈(先进后出)。反向命令(lpush/rpop或者rpush/lpop)操作时,就是队列(先进先出)。
5.删除指定返回内以外的元素。

LTRIM key start stop

6.获取指定返回内的元素。

LRANGE key start stop

7.获取具体下标对应的元素。

LINDEX key index

8.在指定的元素前面或者后面插入一个元素。(如果指定的元素在列表中有相同的,那么指定的就是第一次出现的那个元素)

LINSERT key BEFORE|AFTER pivot value

9.获取列表的长度。

LLEN key

10.设置指定下标的元素。

LSET key index value

11.设置指定下标的元素。

LSET key index value

12.删除count个等于value的元素。(count大于0从头部开始删,count小于0从尾部开始删,count等于0删除所有等于value的元素)

LREM key count value

13.从source尾部弹出一个元素压入到destination的头部。

RPOPLPUSH source destination

14.弹出并获取列表的头(尾)部元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。timeout单位:秒(如果给定多个key时,则按给定key的先后顺序,依次检查各个列表,直到遇见第一个非空列表,把该列表的头(尾)部元素和所属的列表key一起返回),可当做一个阻塞的单播队列使用。

BLPOP/BRPOP key [key ...] timeout
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值