属性
最大长度:2^32-1
操作表头或者表尾,是o(1) 操作表中元素,例如lindex、linsert、lset都是o(n)
有些时候,可以使用redis streams替代
应用
- 作为队列
- 作为栈
常用命令
全部命令查看地址
https://redis.io/commands/?group=list
- lpush,从list左侧加入值
- lpop,从list左侧弹出值
- rpush,从右侧加入值
- rpop,从右侧弹出值
- llen,查看长度
- lrange,遍历
- lmove,从一个列表移动数据到另一个列表
- ltrim,一个有上限的列表
lpop
lpop key [count]
- 弹出并删除元素
- 默认不加count参数,弹出一个
- 加了count,弹出至多count个,如果不够,就弹出全部
lindex
lindex key index
- 下标为整数的时候是从
0
开始的表示第一个元素 - 下标为负数的时候,从最后开始,
-1
表示最后一个元素
lrange
语法
lange key start stop
- start是从
0
开始的 - 下标可以是负数,
-1
表示最后一个元素 - 下标是左右都包含的,[start,stop]
便利整个list
lrange name 0 -1