list类型是按照元素的插入顺序排序的字符串列表,如果key不存在,将为该key创建一个新的列表
1、LPUSH
语法:LPUSH key value [value...]
用途:将一个或多个value插入列表key的表头,可以作为栈(先进后出)
返回值:执行LPUSH命令后,列表key的长度
实例:对空列表执行LPUSH命令:
127.0.0.1:6379> LPUSH mykey a (integer) 1 127.0.0.1:6379> LPUSH mykey b (integer) 2 127.0.0.1:6379> LPUSH mykey c (integer) 3 127.0.0.1:6379> LPUSH mykey d (integer) 4 也可以一次插入多个值到列表: 127.0.0.1:6379> LPUSH mykey e f g h i (integer) 9
2、LPUSHX
语法:LPUSHX key value
用途:将value插入key,key存在并且是在一个列表
(和LPUSH命令相反,当key不存在时,LPUSHX什么也不会做)
返回值:执行LPUSHX命令之后,列表key的长度
实例:mylist是一个空列表
127.0.0.1:6379> LLEN mylist (integer) 0 127.0.0.1:6379> LPUSHX mylist 1 (integer) 0 127.0.0.1:6379> LPUSH mylist 1 (integer) 1 127.0.0.1:6379> LPUSH mylist 2 (integer) 2 127.0.0.1:6379> LRANGE mylist 0 -1 1) "2" 2) "1"
3、RPUSH
语法:RPUSH key value [value ...]
用途:RPUSH用于将一个或多个value插入列表key的表尾,可以作为队列,特点是先进先出
返回值:执行RPUSH命令后,列表key的长度
实例:删除已经存在的key(mylist)
127.0.0.1:6379> DEL mylist (integer) 1 添加单个元素 127.0.0.1:6379> RPUSH mylist 1 (integer) 1 添加重复元素 127.0.0.1:6379> RPUSH mylist 2 (integer) 2 列表允许重复元素 127.0.0.1:6379> LRANGE mylist 0 -1 1) "1" 2) "2" 添加多个元素 127.0.0.1:6379> LPUSH mylist a b c (integer) 5 127.0.0.1:6379> LRANGE mylist 0 -1 1) "c" 2) "b" 3) "a" 4) "1" 5) "2"