List
与Java中的LinkedList类似,可以看做一个双向链表,同时支持正反向检索。
特征:
- 有序
- 元素可重复
- 增删速度快
- 查询速度一般
常用命令
命令 |
用法 |
说明 |
|
lpush rpush |
lpush/rpush K V1 V2 V3 | 往K的左/右插入V |
|
lpop rpop |
lpop/rpop K | 从K的左/右移除一个V |
| llen | llen K | K中元素个数 |
| lrange | lrange K start end |
返回K中从start到end区间内的元素 使用非负下标时:以0为第一个元素,1为第二个元素 使用负数下标时:以-1为最后一个元素,-2为倒数第二个元素 当start为0,end为-1时,代表全部 |
| lindex | lindex K n |
返回下标为n的元素 可用负数,以-1为最后一个元素,-2为倒数第二个元素 |
| ltrim | ltrim K start end |
只保留在区间start到end的元素,删除不在指定区间的。 下标写法同上 |
lpush、rpush:将(一个或多个)V从左/右插入K的表头,如果有多个V,则V的分布为(从左到右/从右到左)


lrange:返回K中指定区间内的元素
区间以偏移量 start 和 stop 指定,下标(index)参数 start 和 stop 都以 0 为底,即 0 表示列表中的第一个元素,1 表示列表的第二个元素,以此类推。我们也可以使用负数下标,以 -1 表示列表的最后一个元素,-2 表示列表的倒数第二个元素,以此类推。当start为0,end为-1时,代表全部

lpop、rpop:移除左/右的第一个元素


lindex:取指定下标的元素
LINDEX 命令可以返回列表 key 中,下标为 index 的元素,正数下标 0 表示第一个元素,也可以使用负数下标,-1 表示倒数第一个元素

ltrim:修剪,保留指定区间内的元素,删除不在区间内的元素
