目录Redis数据类型List操作一、push 插入元素1. lpush,在头部插入2. rpush,在尾部插入二、range 通过区间获取元素三、pop 移除元素1. lpop 左
在redis里,可以把list巧妙的运用成 栈、队列、阻塞队列等。
将一个值或者多个值,插入到列表的头部。
lpush list onelpush list twolpush list three
使用lpush
,这里的l可以看成left,也就是在左边插入,所以目前list是这样的[three, two, one]
。
接下来,使用rpush
,在右边也就是在列表尾部插入元素。
rpush list right1 right2
此时,list是这样的[three, two, one, right1, right2]
。用lrange list 0 -1
来获取下:
可以想象成python里的range()
,通过传入开始和结束的下标,获取元素。
lrange list 1 4
既然上面可以左右的添加操作,那么移除自然也有左右之分了。
移除操作,返回的是被移除的元素。
lpop list
rpop list
lindex list 1
返回列表的长度。
llen list
可以指定移除元素,并且指定数量。
lrem list 2 yi222
现在list里有3个yi222,我要移除2个。
通过ltrim
只保留指定的部分,去掉其他的部分,被截取的list发生改变。
ltrim list 1 4
这里下标从1到4的都保留,其他都被去掉了。
这是组合命令,移除list最后一个元素,并且将它添加到另一个list。
rpoplpush list list2
这里list
是原列表,list2
是目标列表,目标列表不存在会去创建。
exists list
存在返回1,不存在就返回0。
lset list 1 test
当索引参数超出范围,或对一个空列表进行 LSET 时,返回一个错误。
之前
linsert list before test before_test
这是在元素test
之前,插入元素before_test
。
之后
linsert list after test after_test
这是在元素test
之后,插入元素after_test
。
从上述list的操作中,可以观察出它的一些特点:
它实际上是一个链表,节点的左右都方便插入。如果key不存在,会创建新的链表。如果key存在,就新增元素。如果移除了所有的值,就是空链表,也就是不存在。在两边插入或者改动值,效率最高。中间的元素操作,效率相对低。
list在实际中可以灵活运用,比如队列,栈,都能用list来实现。
以上就是Redis数据类型List常用操作命令的详细内容,更多关于Redis数据类型List操作命令的资料请关注编程网其它相关文章!
--结束END--
本文标题: Redis基本数据类型List常用操作命令
本文链接: https://www.lsjlt.com/news/150287.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0