Redis数据类型之list。
list是一个有序的字符串列表,列表内部是使用双向链表(linked list)实现的。list列表类型的值最多可以存储2的32次方-1个元素,一般我们实际使用过程中也达不到这个限值。list类型比较适合作为队列使用,使用lpush+rpop可以实现先进先出的队列。
list常见的命令如下所示:

案例:
添加元素(左侧添加) lpush
127.0.0.1:6379> lpush list1 a
(integer) 1
127.0.0.1:6379> lpush list1 b
(integer) 2
127.0.0.1:6379> lpop list1
"b"
127.0.0.1:6379> lpop list1
"a"
#也可以一次添加多个元素
127.0.0.1:6379> lpush list1 c d e f
(integer) 4
添加元素(右侧添加) rpush
127.0.0.1:6379> rpush list2 x
(integer) 1
127.0.0.1:6379> rpush list2 y
(integer) 2
127.0.0.1:6379> rpop list2
"y"
127.0.0.1:6379> rpop list2
"x"
rpush后lpop(或者lpush后rpop)就是队列,先进先出。
127.0.0.1:6379> rpush list2 x y z
(integer) 3
127.0.0.1:6379> lpop list2
"x"
127.0.0.1:6379> lpop list2
"y"
127.0.0.1:6379> lpop list2
"z"
列表长度 llen
127.0.0.1:6379> lpush list1 a b c d
(integer) 4
127.0.0.1:6379> llen list1
(integer) 4
获取列表中的元素 lrange
127.0.0.1:6379> lrange list1 0 -1
1) "d"
2) "c"
3) "b"
4) "a"
查询指定角标元素 lindex
127.0.0.1:6379> lindex list1 2
"b"
修改指定角标元素 lset
127.0.0.1:6379> lset list1 2 bigdata
OK
127.0.0.1:6379> lrange list1 0 -1
1) "d"
2) "c"
3) "bigdata"
4) "a"