Redis系列- list类型

来源:互联网 发布:unity3d工程师招聘 编辑:程序博客网 时间:2024/06/06 00:41

list 

list是一个链表结构,主要功能是push、pop,获取一个范围内的所有值等。

key可以理解为链表的名称。

list类型其实每一个子元素都是string类型的双向链表。

我们可以通过push、pop操作从链表头部或者尾部添加删除元素,这样list既可以作为栈也可以作为队列

lpush  在key对应的头部添加字符串元素 

lrange 返回列表key 中指定区间内的元素

lpush mylist1 "world"  (返回当前元素是第几个元素)

lpush mylist1 "hello" 

lrange mylist1 0 -1 (从头取到尾)  



rpush 从list尾部压入一个元素。 

rpush mylist2 world 

rpush mylist2 hello 

lrange mylist2 0 -1



linsert在key对应的list的特定位置前或后添加字符串 

lpush list3 "one" 

lpush list3 "tow" 

lrange list3 0 -1 

linsert list3 before one three (指向头的方向为前) 

lrange list3 0 -1



lset设置list中指定下标的元素值 

rpush list4 "hello" 

lset list4 0 "world" 

lrange list4 0 -1 



lrem 从key对应list中删除n个和value相同的元素。 n<0 (从尾部删除) n="0" (全部删除)

rpush list5 hello 

rpush list5 hello 

lrange list5  0 -1

lrem list5 1 hello  #删除一个hello,返回删除掉的个数

lrange list5  0 -1 




ltrim保留key的值范围内的数据。 

rpush list6 one 

rpush list6 tow 

rpush list6 three 

rpush list6 four 

lrange list6 0 -1 

ltrim list6 1 2 保留下标为 1 和 2 的

lrange list6 0 -1 



lpop从list的头部删除元素,并返回删除元素 

lpop list6

rpop 从list的尾部删除元素,并返回删除元素

rpop list6 


rpoplpush 从第一个list尾部弹出元素并添加到第二个list的头部 

rpoplpush list5 list6



lindex 返回名称为key的list中的index位置的元素 

lindex list6 1



llen 返回key对应的list长度 llen list6

原创粉丝点击