yhgfds 发表于 2015-3-23 09:32:21

redis list数据类型

List数据类型
List是一个链表结构,主要功能为push,pop,获取一个范围的所有值等等。操作中key理解为链表的名字,redis的list其实就是一个每个子元素都是string类型的双向链表,我们可以通过push,pop操作从链表的头或者尾部添加删除元素,这样list既可以作为栈,又可以作为队列


lpush :从头部对list添加字符串元素

例子:
lpush list1 'hello'
lpush list1 'world'
lpush list1 'zjz'

lrange list1 0 -2
输出: zjz world

linsert 在特定的位置插入
lpush list2 one
lpush list2 three
linsert list2 before one two 输出 three two one 头方向为前

lset list2 0 'aaa' 把下标为0的元素值替换为aaa

lrem list2 2 one删除两个值为one的元素,从头部开始(n<0表示从尾删除,n=0表示全部删除)


ltrim list2 1 -1 保留 1到-1的元素,其他全部删除掉

lpop list2 从头部弹出一个元素,并返回删除的元素
rpop list2 从尾部弹出一个元素,并返回删除的元素



rpoplpush list1 list2 从list1的尾部弹出元素,并添加到list2的头部

lindex list1 1 返回list1中下标为1的元素值,支持负数

rpush list2 'xxxx' 从尾部压入

llen list2 返回链表的长度

页: [1]
查看完整版本: redis list数据类型