此外,Redis 也支持一些更复杂的数据结构。我们第一个会看的是列表。一个列表是一系列 有序的值。与数组有关的一系列操作是:`RPUSH`, `LPUSH`, `LLEN`, `LRANGE`, `LPOP`和 `RPOP`。列表和普通的值一样,可以被直接使用。
* `RPUSH` 将值添加到列表的末尾
~~~
RPUSH friends "Alice"
RPUSH friedns "Joe"
~~~
* `LPUSH` 将值添加到列表的开始
~~~
LPUSH friends "Sam"
~~~
* `LRANGE`是从列表中去一个指定范围的子集。它通过你想取的范围的第一个元素的下标和 最后一个元素的下标作为参数。将 -1 作为参数意味着取值到列表的最后。
~~~
LRANGE friends 0 -1 # => 1) "Sam", 2) "Alice", 3) "Joe"
LRANGE friends 0 1 # => 1) "Sam", 2) "Alice"
LRANGE friends 1 2 # => 1) "Alice", 2) "Joe"
~~~
* `LLEN` 返回指定列表的长度
~~~
LLEN friends # => 3
~~~
* `LPOP` 从列表中删除第一个元素,并将它作为返回值
~~~
LPOP friends # => "Sam"
~~~
* `RPOP` 从列表中删除最后一个元素,并将它作为返回值
~~~
RPOP friends # => "Joe"
~~~
注意看现在的列表:
~~~
LLEN friends # => 1
LRANGE friends 0 -1 # => 1) "Alice"
~~~