两端添加
lpush key values[value1 value2…]: 在指定的key所关联的list头部插入所有的values,如果该key不存在,该命令在插入的之前创建一个与该key关联的空链表,之后再向该链表的头部插入数据。插入成功,返回元素的个数。
rpush key values[value1、value2…]: 在该list的尾部添加元素
查看列表
lrange key start end: 获取链表中从start到end的元素的值,start、end从0开始计算;也可以为负数,若为-1则表示链表尾部的元素,-2则表示倒数第二个,依次类推…
两端弹出
lpop key: 返回并弹出指定的key关联的链表中的第一个元素,即头部元素。如果该key不存在,返回nil;若key存在,则返回链表的头部元素。
**rpop key:**从尾部弹出元素
获取列表中元素的个数
**llen key:**返回指定的key关联的链表中的元素数量。
其它命令
lpushx key value: 仅当参数中指定的key存在时,想关联的list的头部插入value。如果不存在,将不进行插入。
**rpushx key value:**在该list的尾部添加元素
lrem key count value: 删除count个值为value的元素,如果count大于0,从头向尾遍历并删除count个值为value的元素,如果count小于0,则从尾到头遍历并删除。如果count等于0,则删除链表中所有等于value的值。
1)初始化数据
2)从头删除,2个数字“3”
lrem mylist3 2 3
lset key index value: 设置链表中的index的脚标的元素值,0代表链表的头元素,-1代表链表的尾元素。操作链表的脚标不存在则抛异常。
linsert key before|after pivot value: 在pivot元素前或者后插入value这个元素。
rpoplpush resource destination: 将链表中的尾部元素弹出并添加到头部。【循环操作】
1)将mylist5右端弹出,压入到mylist6左边。
2)将mylist6右端数据弹出,压入到左端