Redis系统学习之五大基本数据类型(List(列表))

本文围绕Redis的List(列表)展开,介绍了其多种操作,如左右添加值、获取值范围、移除元素等。通过不同的添加和获取方式,可实现队列、栈和阻塞队列的功能,还提及了这些操作的使用场景,如消息队列和消息排队。

List(列表)

 
  • 这个就比较有意思了
    • 如果从左边添加,右边获取,就可以实现队列的功能
    • 如果从左边添加,左边获取,就可以实现栈的功能
    • 如果是可以两面添加,两边获取就可以实现阻塞队列的功能
左边添加值
  • lpush key value
    • image
获取值(范围)
  • lrange key startindex endindex
    • 因为是一直从左边添加的,符合压栈的规则先进去的后出来,所以顶部的是3,获取前两个就是3,2
    • image
 
右边添加值
  • rpush key value
    • 可以看到 0 被放到了1的下面
    • image
  • 没有rrange,只有从左侧开始 startindex endindex 获取范围
移除并返回左边第一个元素
  • lpop key
    • 移除左边第一个元素
    • image
移除并返回右边第一个元素
  • rpop key
    • 移除右面第一个元素
    • image
根据下标获取元素
  • lindex key index
    • 根据索引获取指定元素,下标从0开始,-1代表获取最后一个值
    • image
获取元素的长度
  • llen key
    • 获取元素的个数
    • image
移除指定的元素
  • lrem key 数量 值
    • 移除一个1
    • image
    • 因为是list所以允许有重复元素
    • 移除两个3
    • image
    • 弹幕:数量大于0,是从前面开始移除,=0是全部移除,<0是从后面移除
截取元素
  • ltrim key startindex endindex
    • 截取前两个
    • image
 
从源list右边移除一个元素添加到指定list的左边
  • rpoplpush sourcelist distlist
    • image
 
指定元素值替换(前提是list必须存在,索引元素也必须存在,不存在就会报错)
  • lset key index value
    • 将5替换成0
    • image
指定元素之前或之后插入元素
  • linsert key before|after 指定元素值 插入值
    • 在3的后面插入3.5,如果list中存在重复的指定元素,以最前面的为准
    • image
删除list
  • del key
使用场景:
  • 队列,栈(消息队列,消息排队)

作者:彼岸舞

时间:2021\05\05

内容关于:Redis

本文属于作者原创,未经允许,禁止转发

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值