列表类型可以存储一个有序的字符串列表,常用操作是向列表两端添加元素,或者获得列表的某一个片段。
命令
-
向列表两端增加元素
LPUSH key value [value ...] RPUSH key value [value...]
-
从列表两端弹出元素
LPOP key RPOP key
LPOP/RPOP做两件事,首先先移除元素,然后返回被移除元素的值
-
获取列表中元素的个数
LLEN key
-
获取列表片段
LRANGE key start stop
LRANGE
将返回索引从start
到stop
之间的所有元素,包括两端元素。Redis
列表的起始索引为0。另外LRANGE不会像LPOP那样删除元素。如果start索引位置大于stop的则会返回空列表,如果stop大于实际的索引范围,则会返回列表中最右边的元素
-
删除列表中指定的值
LREM key count value
LREM 会删除列表中前count个值为value的元素,返回值是实际删除的元素个数。count值不同LREM执行方式会有差异。
1.当count>0时,LREM命令会从列表左边开始删除前count个值为value的元素
2.当count<0时,LREM命令会从列表右边开始删除前count个值为value的元素
3.当count=0时,LREM会删除所有的值为value的元素
示例:
添加列表
lpush vilay 1 2 3 4 5 3 6 3 6 7 3 8 3
删除列表值
lren vilay 2 3
查看列表所有数据
lrange key 0 -1 # 0是起始索引,-1是结束索引
查看列表
lrange vilay 0 12
结果:
1) "8"
2) "7"
3) "6"
4) "3"
5) "6"
6) "3"
7) "5"
8) "4"
9) "3"
10) "2"
11) "1"
根据索引获取单个元素
lindex key index
示例:
lindex name 1
由于是使用lpush命令,从左侧添加,所以删除的时候是从我们添加列表的右侧开始删除
其它删除命令类似。