1、 list 实际上是一个链表, before Node after , left , right 都可以插入值
2、如果 key 不存在,则创建新的链表
3、如果 key 存在,新增内容
4、如果移除了所有值(空链表),也代表不存在
5、在两边插入或者改动值,效率最高!修改中间元素,效率相对较低
消息队列:左入右出( lpush rpop )、栈:左入左出( lpush lpop )
Redis列表是简单的字符串列表,按照插入顺序排序,你可以添加一个元素到列表的头部(左边)或者尾部(右边)
一个列表最多可以包含超过 40亿个元素
列表的常用命令(持续扩充):
1、lpush key value1 [value2]: 将一个或多个值插入列表头部(左边)
通过执行lpush animal cat dog 向animal中左边同时插入 cat和dog,下方提示的(Integer)2,是指当前列表中元素的个数;
然后通过查询命令,我们可以看到排在第一个的是dog 第二个是cat,这是因为从左边插入,县插入cat,然后再在左侧插入dog,这就导致dog在cat的前面。
2、rpush key value1 [value2]: 将一个或多个值插入列表尾部(右边)
执行rpush animal monkey:向列表的右侧插入一个元素monkey,此时列表中的元素就有3个
通过查询命令我们可以看到monkey出现在了列表的尾部
3、lrange key start stop: 获取列表指定范围内的元素(包含start和stop)
执行lrange animal 1 2 查询列表的第2个和第3个元素(注意列表中的索引是从0开始计算的)
4、llen key: 获取列表长度
在前面几个步骤中我们一共插入了三个元素dog、cat、monkey
5、lpop key: 移出并获取列表的第一个元素
列表中第一个元素是dog,执行lpop animal后,d出左边第一个元素并返回,再次查询,我们看到只剩下两个元素
6、rpop key: 移出并获取列表的最后一个元素
执行rpop animal,移除并返回monkey,最后列表中只剩下cat一个元素
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)