2021.7.16笔记

Redis的List类型
lpush k1 a b c d 新增k1, 值为d c b a 因为l指的是left左边的意思,就是依次从上一个值的左边插入
rpush正好想反,是right,右边的意思,值为a b c d
相对应的lpop依次从左边取值,lpop k1 第一个值就是d,那么可以发现d这个值是最后进去的最先出来的,同向命令描述的是一个栈,后进先出
rpop k1 第一个值就是a,反向命令描述的是一个队列,先进先出。
lrange k1 0 -1 看k1这个key的第0个字节到最后一个字节的所有值,返回c b 因为d和a在上面运行pop命令的时候已经弹出了,不在k1里了,
lindex k1 1 查看k1的下标为1的值
返回b,k1里面的值分别是 c b,索引从0开始,所以是b
lset k1 1 hello 把索引为1的值改成hello,这时候lrange k1 0 -1看一下,变成了 c hello
上面这些命令使得list可以代替数组结构,因为数组是频繁使用下标的

新建一个k2 lpush k2 a b c a b c a b c
因为是left所以结构是c b a c b a c b a,然后学习一个去重命令
lrem k2 2 a 移除k2里面的两个a,哪两个呢?如果是正数就是正序,如果是负数就是逆序,运行一下命令可以看到,c b c b c b a,前面的两个a被移除了,那把2改成-2,就会变成c b a c b c b,移除的是逆序的前两个a,这是移除命令,
还有插入命令linsert k3 after b a 在k3里面的第一个b的后面插入一个a,假如k3现在的状态时c b c b c b a,运行后就变成c b a c b c b a,
有after就会有before,就是在指定的值的前面添加,和上面原理一样,
llen k3 查看k3里面一共有多少元素,c b a c b c b a,返回8。
接下来说B开头的命令,B就是block的意思,阻塞的
这时候我们使用三个客户端,redis的接口都是同一个
在第一个客户端执行
blpop k9 …(可以多个可以

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值